(现在cocos2dx-x-3.0正式版已经出了,之前用的cocos2d-x-3.0rc1,就先用这个版本吧)
0. 完成C++项目
在cmd下使用cocos.py new命令,然后习惯性的在win32下运行一下看看结果
1. java jdk要有
2. 我选择了专门为android开发版本的eclipse(Android Development Tools for Eclipse),好处是自带了android SDK
http://developer.android.com/sdk/index.html地址是这里
3. 下载解压android NDK
4. 下载解压apache-ant(这个要手工配置环境变量,在Path中添加ant的bin目录)
5. 运行cocos2d-x-3.0rc1根目录下的setup.py,按照提示手工添加三个目录,SDK和NDK是根目录,ant是bin目录。如果成功脚本就会一闪而过
6. 在项目的proj.android目录下运行build_native.py,需要等一段时间,如果幸运的成功了的话,在\proj.android\libs\armeabi下面会看到so文件。(如果没有成功生成so文件,可以看看proj.android\jni下面的Android.mk文件是否写全了所有用到的cpp文件,由于之前加在class文件夹下面的文件不知怎么都跑到了win32文件夹下面,所以手动把这些文件写到Android.mk文件夹下吧!)
6.5 然后将cocos2d-x-3.0rc1\cocos\2d\platform\android\java\src\org\cocos2dx\lib下面的java文件都复制到proj.android\src\org\cocos2dx\lib。
7. 现在可以选择在eclipse下完成发布apk和真机测试了。在eclipse下import项目的proj.android目录
8.运行报错,找不到org.cocos2dx.lib包。手动创建这个包,然后将cocos2d-x-3.0rc1\cocos\2d\platform\android\java\src\org\cocos2dx\lib下面的java文件都复制到手动建包的位置。
9.再运行还是有错,Unable to execute dex: java.nio.BufferOverflowException.参考了别人的做法解决了:
右击项目,在Build Path->Configure Build Path...->Libraries下面把Android Dependencies和Android Private Libraries都remove掉
10.连上手机真机测试,生成的apk在工程的bin/src下面可以看到。(记得打开手机的开发者模式还有不要锁屏什么的)