通过前面的部署过程可以知道cocos2dx的开发过程如下:
1.VS2012完成修改
2.因为指定了CPP文件位置,ndk可以通过jni方式完成C++文件的编译,运行以下命令完成proj.android的编译:
cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android
python build_native.py
3.将编译好的安卓项目导入到Eclipse进行编译和运行
但是上面这些步骤都是在官网工具包下面运行的,交叉编译一次耗时非常严重(把helloworld单个项目的win32平台开发、交叉编译安卓项目包、Eclipse编译安卓项目包、运行apk这几个步骤),下面开始以官网工具包作为基础探索优化速度的方案。
1.cocos new HelloWorld -p com.cocos2dx.org -l cpp -d C:\ComputerScience\workspace-cocos
2.查看build_naitive.py中存在以下脚本:
command = 'cocos compile -p android -s %s -m %s' % (app_android_root, build_mode)
其中app_android_root指向C:\ComputerScience\workspace-cocos\HelloWorld
相关参数解释详见http://www.cocos2d-x.org/wiki/Cocos_compile:
修改该命令为:command = 'cocos compile -p android -j 4 -s %s -m %s' % (app_android_root, build_mode),添加了-j4多核编译以加快编译速度
尝试编译安卓项目包:
cd C:\ComputerScience\workspace-cocos\FirstDemo\proj.android
python build_native.py
整个编译过程只需要7秒,快了很多了。
分析jni目录的android.mk文件:
可以发现该文件指定了需要进行编译的CPP文件。
2.接下来在vs2012修改运行时候显示的项目名,然后用
cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android
python build_native.py
编译安卓项目包在手机上运行。
2.1vs2012修改名称为“My HelloWorld”:
同时为了加快编译速度取消增量链接:
运行结果:
编译安卓项目包运行结果如下:
cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android
python build_native.py
在Eclipse编译运行在安卓手机:
至此整个交叉编译的过程就都理顺了。