cocos2d-x2.2.1或者2.2.2交叉编译到安卓

cocos2d-x2.2.1或者2.2.2交叉编译到安卓跟2.0.4版本操作方法是一致的,这里是2.0.4版本交叉编译传送门http://blog.csdn.net/u013174689/article/details/18700217

cocos2d-x2.2.1或者2.2.2下载完毕后直接解压后即可使用了。

解压目录不要带中文和空格,这点很重要。

cocos2d x 2.0.4、2.1.4等版本可以搭配NDK r7使用。

cocos2d-x 2.2.1 2.2.2我是搭配android-ndk-r9c-windows-x86使用。

其中x86代表的是适用于32位的系统。

 adt我是用的adt-bundle-windows-x86-20140321

jdk还是用的以前的jdk1.6.0_10

cygwin也是用的以前的。


之前用的是NDK r7,现在改为用ndk-r9c下面我们需要重新设置一下环境。

 

设置环境变量

用鼠标右击“我的电脑”,选择“属性”->“高级”->“环境变量”->“系统变量”,

然后在下面的框中找到系统变量NDK_ROOT点击编辑(如果没有NDK_ROOT则新建一个)

把存放的路径填写到变量值中,例如我的ndk存放路径是E:\cocos2d\android-ndk-r9c-windows-x86\android-ndk-r9c

 

检查确认系统变量path路径是否存在,path路径;%NDK_ROOT%(前面的分号;是用于跟其他变量值分开)

如果还没有Path,则新建一个。

设置完毕后需要重启电脑。

 

 

设置Android->NDK中的ndk路径

打开eclipse.exe软件,依次点击window->perfernces->Android->NDK,填ndk路径,例如我存放的路径是E:\cocos2d\android-ndk-r9c-windows-x86\android-ndk-r9c,点击ok确认。

 

 

 

 交叉编译

之前已经写过关于交叉编译的详细文章,这个是传送门http://blog.csdn.net/u013174689/article/details/18700217。

因为cocos2d-x 2.2.2新建项目的时候,已经一并生成了android项目,不再需要新建android项目,而且adt可以生成so文件,操作比以前简化了。所以我们直接跳到上面文章中的第4步操作:

进入android项目(即例如我的Game004文件夹)的proj.android\jni文件夹下面,用VC++打开Android.mk文件(先打开vc++软件,然后把Android.mk文件拖进去),如果该mk文件拒绝访问可能是需要修改了一下权限。

 

 该mk文件的意思是:让我们添加Classes文件夹下面所有要编译的.cpp文件,自己一个个把cpp的名字手动添加进去。

我这里采用批量处理的方式。参考资料:http://blog.csdn.net/z104207/article/details/11574339

里面会有关于如果项目中有使用文件夹时的Android.mk处理方法。


我这里没有使用文件夹,只需要修改为图中的3句话即可:

FILE_LIST := hellocpp/main.cpp

FILE_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)

只需要图片中那简单的3行代码,就搞定!不需要我们一个个文件地舒服,真爽!太方便了!

 (务必注意,FILE_LIST := hellocpp/main.cpp该行中的hellocpp/main.cpp前的是FILE_LIST不能错,

否则可能会导致很多文件无法复制,或者会导致main.cpp没能复制进去,会导致做出来的apk安装后运行闪退。)


修改.bash_profile文件,通过用bash_profile文件对NDK_ROOT进行设置。

具体的修改方法,请参考传送门http://  blog.csdn.net/u013174689/article/details/18700217。

例如我的NDK路径是E:\cocos2d\android-ndk-r9c-windows-x86\android-ndk-r9c,你参考自己的修改。

我直接右键写字板打开,我们需要在该文件最后加入一下两行,如下图:

NDK_ROOT=/cygdrive/e/cocos2d/android-ndk-r9c-windows-x86/android-ndk-r9c

export NDK_ROOT

注意两者斜杠方向是不同的。


(2)在android项目的proj.android文件夹下面找到build_native.sh 文件 

(这步可以省略不做,做或者不做,对结果并无影响。但是我习惯看cygwin界面的报错,所以偶尔还是用这个)

打开开始菜单——所有程序——Cygwin Terminal软件,然后直接把我们项目proj.android目录下的build_native.sh 文件拖动到cygwin软件中。然后按回车,等待看是否编译成功。(时间会比较长些,耐心等待)

编译成功之后,会直接在proj.android\libs\armeabi这个目录底下生成so文件,如下图。

 

 

6、接下来就是在eclipse里面导入android项目,并编译成apk文件。

(1)将刚编译完的工程导入到eclipse中,操作方法如下:

打开eclipse.exe软件,依次点击File->New->project,如下图,点击Android->Android Project from Existing Code,确认next。

填写导入我们项目的Root Directory路径,

例如我的是E:\cocos2d\cocos2d-x-2.2.2\projects\Game004,点击按钮Refresh,就可以看到新导入的New Project Name信息。

(如果导入新项目时,Java-adt中之前有旧的同名的项目,必须删除后才能导入。删除方法,右键选择Delete)

(2)如果第一次操作的童鞋们刚加进去肯定是要报错的,因为还没有加库。

导入库的方法是跟刚刚(1)的方法一样。

我们以同样的方法导入cocos2d-x-2.2.2文件夹里cocos2dx里面的platform里的android文件。
例如我的是E:\cocos2d\cocos2d-x-2.2.2\cocos2dx\platform\android



(3)点击项目名字,右键run as android application,然后把生成的apk文件放到手机上运行。


 

小提醒:

菜单栏Window——reset Perspective可以重置窗口为经典页面。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值