cocos2dx的Android环境搭建(Windows/Mac)html
我用的cocos2dx3.15版本的。java
如下步骤是在Windows平台执行的。python
建立Cocos2d-x项目
将刚才下载的cocos2dx3.15压缩包解压到你指定的文件夹里。android
进入到目录cocos2d-x-3.15/tools/cocos2d-console/bin/cocos.pyc++
打开终端运行cocos.py脚本建立文件windows
python cocos.py new test -p com.coco2dx.org -l cpp -d ~/Desktop
参数说明:android-studio
- test为项目名称
-p
后面接包名
-l
后面接开发语言类型,有cpp, lua, js三种类型
-d
后面接项目存放的目录
编译libcocos2dlua.so文件
eclipse(不太推荐,谷歌已经放弃eclipse)app
- 建立一个空的android工程(个人工程是 TestAndroidCC)
- 进入到刚刚建立的cocos2dx工程的proj.android
目录下(个人是:D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android)
- 打开终端,执行 cocos compile -p android -android(由于cocos取消了执行build_native.py脚本编译的方式,统一用cocos命令,环境配置好了就能够直接执行cocos命令,若是cocos2dx命令未找到,说明环境配置有问题)或者能够执行 python D:\cocos2d-x\cocos2d-x-3.15\tools\cocos2d-console\bin\cocos.py compile -p android -android
- 等待编译完成后,找到libcocos2dlua.so文件(在libs/armeabi目录下)
- 把刚刚编译好的so文件所在的文件夹复制到TestAndroidCC目录下的libs文件夹下
- 把cocos2dx的资源目录(res和src文件夹)复制到TestAndroidCC的assets目录下
- 把cocos2dx3.15引擎D:\cocos2d-x\cocos2d-x-3.15\cocos\platform\android\java\src目录下的org文件拷贝到TestAndroidCC/src目录下
- 在MainActivity.java的同级目录建立一个新Activity文件(名字本身定义,个人是GameActivity)继承Cocos2dxActivity(别忘了导入包import org.cocos2dx.lib.Cocos2dxActivity;)
- 在AndroidManifest.xml 添加对新Activity的配置,添加注册新的GameActivity
- 参考cocos2dx游戏项目的AndroidManifest.xml文件,对TestAndroidCC的AndroidManifest.xml作改动
- 在activity_main.xml布局里添加一个button,而后在MainActivity里添为button添加事件

- 编译运行TestAndroidCC,我用的是 夜神模拟器
Android Studioeclipse
- 建立一个空的android工程(个人工程是 TestAndroid)
- 进入到刚刚建立的cocos2dx工程的proj.android-studio
目录下(个人是:D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android-studio)
- 打开终端,执行 cocos compile -p android --android-studio(由于cocos取消了执行build_native.py脚本编译的方式,统一用cocos命令,环境配置好了就能够直接执行cocos命令,若是cocos2dx命令未找到,说明环境配置有问题)或者能够执行 python D:\cocos2d-x\cocos2d-x-3.15\tools\cocos2d-console\bin\cocos.py compile -p android --android-studio
- 等待编译完成后,找到libcocos2dlua.so文件(找了很久,发如今D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android-studio\app\build\intermediates\transforms\mergeJniLibs\debug\folders\2000\1f\main\lib)
- 在app/src/main目录下新建一个jniLibs(名字必须是这个一个字母都不能差)文件夹,把刚刚编译好的so文件所在的文件夹(armeabi文件夹)复制到jniLibs文件夹下
- 在TestAndroid项目中导入Module,右击项目文件 - new - Module - Import Eclipse ADT Project导入D:\cocos2d-x\cocos2d-x-3.15\cocos\platform\android\java目录,libcocos2dx的Module导入成功
- 对TestAndroid添加libcocos2dx的引用,右击项目文件 - app - Dependencies添加libcocos2dx
- 把cocos2dx的资源目录(res和src文件夹)复制到TestAndroid的src/main/assets目录下(若是没有assets文件夹:右击TestAndroid项目下的app文件夹 - new - Folder - Assets Folder建立)
- 在MainActivity.java的同级目录建立一个新Activity文件(名字本身定义,个人是GameActivity)继承Cocos2dxActivity(别忘了导入包import org.cocos2dx.lib.Cocos2dxActivity;)
- 在AndroidManifest.xml 添加对新Activity的配置,添加注册新的GameActivity
- 参考cocos2dx游戏项目的AndroidManifest.xml文件,对TestAndroidCC的AndroidManifest.xml作改动
- 在activity_main.xml布局里添加一个button,而后在MainActivity里添为button添加事件
- 编译运行,我用的是 夜神模拟器

若是想要退出游戏返回应用界面①cocos2dx lua项目:cc.Director:getInstance():endToLua() ②cocos2dx c++项目:cocos2d::Director::getInstance()->end();布局
注意事项:编译so的时候失败,缘由多是NDK版本太高,也有多是sdk tools版本太高,建议下载旧一点的tools,我下载的是tools_r25.2.5-windows.zip,替换Android-SDK下的tools