首先我是通过引擎自带的模板在vs里建立工程,生成proj.win32,但是很遗憾却不能生成proj.andriod. 写好代码后,并且在windows平台测试运行成功后,接下来考虑的就是如何生成我们andrioid手机上运行的apk了。
于是通过控制台运行python工具生成各种平台的helloworld工程,如下
其中生成了我们需要的proj.android
再把通过引擎生成的proj.win32里写好的classes全部复制到通过python工具生成的classes目录里面(除了resource.h文件,main.h,main.cpp文件等和windows平台相关文件,否则报错),很明显该Classes目录为各个平台共享。
然后倒入proj.andriod到clispe里,同样方法导入libcocos2dx库项目,所在目录E:\cocos2d-x-2.1.5\cocos2dx\platform\android。而我上次已经倒入了,所以这次不需要重复导入libcocos2dx库项目了。操作如下:
接下来是生成我们想要的apk了。 记得把资源拷贝到assets目录。
在这过程中还会遇到好多头痛的问题
1.首先就是剔除上面说的windows平台的文件。
2.编译工具的选择
3.andriod api版本问题 解决办法如下
4.jni目录下的andriod.mk 文件,可以理解成linux 下的makefile文件吧。
有两处需要增加修改
第一处:根据自己引擎的库的保存的目录增填导入的路径
第二处:mk需要的cpp,否则找不到定义会报错。所以修改原来的LOCAL_SRC_FILES,为如下4条语句,我的工程下有个SneakyInput子目录,所以FILE_LIST需要+= 一个除了classes目录外的目录里的cpp。
5.run as Application 后,发现手机屏幕上的各个精灵位置不是自己期待的位置,修改代码,继续拷贝源码到classes里,然后重新编译生成apk,好麻烦。
关键的几个容易遗忘的步骤都记下了,希望下次提高效率。