cocos2dx 3.x android平台移植 apk打包教程

来源:互联网 发布:美工的岗位工资待遇 编辑:程序博客网 时间:2024/05/17 03:44

android平台的移植问题苦恼了我好几天,最后虽然移植成功,但是博主并不是在Eclipse中打包的,而是用的coco自带的工具打包的,详情让我慢慢道来。

  • 第一步 配置android环境

    这一步非常重要也是最容易出错的地方,同样也是花费我时间最多的地方,尝试了好多版本的配置文件。

    • SDK用的是adt-bundle-windows-x86_64-20131030这是一个Eclipse和SDK的集合的压缩文件,直接解压缩到你想安装的路径就行。
    • ANT我用的是apache-ant-1.9.2 ,网上搜一下也是个压缩包直接解压,然后同上。
    • NDK用的是android-ndk-r9d版本,也是压缩包直接解压。
    • JDK用的版本是1.8.0_51,这是安装文件,点下一步安装就行。
      先安装JDK,打开”环境变量”,配置如下
      这里写图片描述
      图片少标了个,%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;这是我的路径然后在“开始->运行->输入cmd->java -version”,如下说明配置成功
      这里写图片描述

接下来讲命令行cd到安装了cocos2dx的目录下,输入setup.py,第一次会让你配置SDK、NDK和ANT,我的配置如下
这里写图片描述

注意:不要带空格和中文
弄好以后会在“环境变量”里面出现相应的变量名,记得在变量“path”里面加入%NDK_ROOT%;%ANDROID_SDK_ROOT%;
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

打开cmd输入adb -h 看到如下就是说明SDK配置好了
这里写图片描述
到此环境是配置好了。

  • 第二步
    • 如果你的项目还没有在VS运行过,要先运行出来。要注意的是3.7好像要用2013,之前的3.x用2012,总之要用VS运行出来才能继续往下走。
    • 进入你项目里面的proj.android目录,运行build_native.py。结果如下图
      这里写图片描述
      如果代码需要修改,记得要再次运行它。
    • 用文本工具打开项目目录\proj.android\jni下的Android.mk,我们需要修改LOCAL_SRC_FILES,如下图
      这里写图片描述
      红色方框里面的是cocos生成项目自带的类,如果你添加了其他的类,那么就要照着这个格式添加,就像我下面的样式一样。注意这个地方不能出现空行像这种就会报错。
      这里写图片描述
      还有一点就是一定要看清楚了有几个cpp就添加几个,不要重复添加也不能多添加,我之前就是重复添加了一个报错了,半天才看出来是这里出了问题。
      假如你导入了非Class路径下的头文件,比如你导入了cocos2d文件里面的头文件(都是项目目录里面的文件)
      这里写图片描述

这里写图片描述
那么你还要修改这里的,如下图
这里写图片描述

多说一点在Eclipse里面导入pro.android文件时不要点“把项目复制到本地的工作环境”就是因为前面的../../这个是根目录如果复制了就找不到原来的根目录会出错。
- 关于横竖屏的修改的地方是项目目录\proj.android下的AndroidManifest.xml文件。用文本工具打开portrait为竖屏,landscape为横屏。
这里写图片描述
- 游戏图标和名字修改的地方在项目\proj.android\res下
这里写图片描述
前四个文件里面都是不同像素的图标分别是32*32、48*48、72*72、96*96(单位像素)。名字修改是在该目录的values子目录下的strings.xml文件,用文本工具打开
这里写图片描述
红色方框里面就是修改的地方,我修改成了Egg,也可以修改成中文。
- 第三步
命令行cd到项目目录下输入cocos run -p android,如下图
这里写图片描述

这里写图片描述
出现了BUILD SUCCESSFUL就是说明打包成功了,apk文件会被放到项目目录bin\debug\android文件夹中,安装到真机就可以运行了。

最后如果大家打包的时候出现了错误,可以尝试着重新new一个cocos项目然后把之前的Classes和resource复制过去win32运行出来后,运行build_native.py再重新打包。我的一些错误就是这样解决的。3.7支持Android studio 了,这是个好消息。至于在Eclipse里面打包需要安装CDT插件,还有就是android模拟器没设置好,真机可以运行模拟器就不行。

0 0
原创粉丝点击