为了少走不必弯路,此处总结记录cocos2d开发环境搭建、android开发环境搭建、android NDK环境搭建,最终实现cocos2dx 2.* 游戏Android平台移植。
转载请注明出处:http://blog.csdn.net/oyangyufu/article/details/24498213
cocos2dx 2.* 游戏Android平台移植所需要的必要条件
1、cocos2d开发环境搭建,请见前面写的文档:http://blog.csdn.net/oyangyufu/article/details/24009141
2、android开发环境搭建,请见文档:http://download.csdn.net/detail/oyangyufu/7251299
3、安装包准备:
android-ndk-r9-windows-x86_64.zip下载地址: http://developer.android.com/tools/sdk/ndk/index.html
setup-x86_64.exe下载地址:http://www.cygwin.com/
Android NDK概述
NDK全称:Native Development Kit。
1、NDK是一系列工具的集合。
* NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。
* NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。
* NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。
解压Android NDK至:
D:\android-ndk-r9-windows-x86_64\android-ndk-r9
setup-x86_64安装
步骤:
安装完成后桌面会有快捷方式:, 安装目录D:\cygwin64下会有目录,相当于创建了小型linux系统:
测试Cygwin64,Cygwin64终端打开输入gcc -v,如下证明成功:
配置Cygwin64环境变量
打开.bash_profile配置文件定义NDK_ROOT、COCOS2D_ROOT变量,让用户每次登入系统自动读取此变量
$ vi .bash_profile 在末尾添加如下:
保存,重启终端。
修改项目c++文件路径
打开/cygdrive/e/cocos2d-x/cocos2d-x-2.2.3/projects/testlianliankan/proj.android/jni/Android.mk, 修改LOCAL_SRC_FILES变量为:
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp \
../../Classes/GameLayer.cpp \
../../Classes/GBKToUTF8.cpp \
../../Classes/MapLayer.cpp \
../../Classes/MapNode.cpp \
../../Classes/PauseLayer.cpp
编译cocos2d-x游戏项目 Android版本
进入到项目目录,执行编译脚本,如下:
大概要10分钟编译完成,在libs/armeabi 下生成libcocos2dcpp.so文件,如下:
最后将cocos2d项目导入配置好NDK eclipse来生成apk包。
配置Android NDK环境:
打开eclipse,选择 window->Preferences,配置ndk路径:
移植库与资源
1、将E:\cocos2d-x\cocos2d-x-2.2.3\cocos2dx\platform\android\java\src下org 拷贝到E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\proj.android\src下面,以便导入cocos2d项目时能找到cocos2d库。
2、将E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\Resources下的资源拷贝到E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\proj.android\assets下面。
项目导入工程编译
打开eclipse, file->import
勾选要导入项目,Finish。