Cocos2d-x2.1.4的android环境配置及使用
----小黑5188,2013-10-02晨
=================================================================
* 本文各步骤小黑都亲自成功操作,如有遗漏错误,请告知修改,谢谢。
* 转载本文请注明出处,尊重小黑的劳动成果,谢谢。
* 一起学习,一起进步。(QQ:1158685676)
【http://blog.csdn.net/xiaohei5188/article/details/12233895】
=================================================================
目录
一、 环境说明
二、 安装包
三、 安装步骤介绍
1、 安装jdk到D:\Program Files\Java
2、 解压cocos2d-x到D:\cocos2d-x\cocos2d-x-2.1.4
3、 解压ndk到D:\DevTools\android-ndk-r8e
4、 解压adt到D:\DevTools\adt-bundle-windows-x86_64-20130717
5、 安装cygwin64,执行setup-x86_64.exe,安装到D:\DevTools\cygwin64。
四、 使用步骤介绍
1、 修改D:\cocos2d-x\cocos2d-x-2.1.4\create-android-project.bat
2、 修改D:\cocos2d-x\cocos2d-x-2.1.4\create-android-project.sh
3、 执行create-android-project.bat创建工程
4、 编译C++文件,输出.so文件
5、 编译Android工程
五、 问题总结
1、本人电脑是64位的WIN7,所以本文以此配置说事。
2、电脑一定要使用administrator帐号
如何切换帐号: ****方法一:控制面板-->管理工具-->计算机管理-->本地用户和组-->用户-->鼠标右键单击administrator选属性--〉将帐户已禁用的钩去掉--〉确定---〉重启--〉ok ****方法二: 本地用户和组,高级家庭版没有这一项,怎么办? 解决: 可以在“开始->所有程序->附件”中,右击“命令提示符”,选择“以管理员身份运行”。然后,在命令提示符窗口输入"net user administrator /active:yes"(不要输入引号)---->开始---->切换用户就能看到administrator |
3、参考
http://blog.csdn.net/xiaohei5188/article/details/12198151
http://blog.csdn.net/ilylyl521/article/details/9222883
“jdk”+“Cocos2d-x2.1.4”+“android-ndk-r8e”+“adt-bundle-windows-x86_64-20130717”+“cygwin64”
1、jdk-7u40-windows-x64.exe(下载完后直接安装,一直下一步)
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
2、cocos2d-x-2.1.4.zip
忘记网址了,自已度娘去
3、android-ndk-r8e-windows-x86_64.zip(下载完直接解压,解压目录不要带中文和空格)
http://dl.google.com/android/ndk/android-ndk-r8e-windows-x86_64.zip
4、adt-bundle-windows-x86_64-20130717.zip(下载完直接解压,解压目录不要带中文和空格,里面包含了带adt插件的eclipse和最新版的android sdk)
https://dl.google.com/android/adt/adt-bundle-windows-x86_64-20130717.zip
5、setup-x86_64.exe
http://cygwin.com/setup-x86_64.exe
2、解压cocos2d-x到D:\cocos2d-x\cocos2d-x-2.1.4
3、解压ndk到D:\DevTools\android-ndk-r8e
4、解压adt到D:\DevTools\adt-bundle-windows-x86_64-20130717
5、安装cygwin64,执行setup-x86_64.exe,安装到D:\DevTools\cygwin64。
参考以下图:
(图2路径D:\DevTools\cygwin64, 图3路径D:\DevTools\cygwin64\InstallDownloads) |
(图1)
(图2)
(图3)这个目录你随意填吧,这是下载包目录,以后重新安装可以在前面第一步选择install from local directory
(图4)
(图5)选择163的应该快一些
(图6)
(图7)
(图8)然后下一步下一步,狂等好久直到安装完毕。
6、修改全局变量
(1)设置系统变量NDK_ROOT
D:\DevTools\android-ndk-r8e
(2)设置系统变量Path
编辑Path,在后面追加4个环境变量,以;号隔开(别忘了给前面的加上;),4个分别是android的sdk的platform-tools,android的sdk的tools,cygwin的bin,上面添加的NDK_ROOT,即:
D:\DevTools\adt-bundle-windows-x86_64-20130717\sdk\platform-tools;D:\DevTools\adt-bundle-windows-x86_64-20130717\sdk\tools;D:\DevTools\cygwin64\bin;%NDK_ROOT% |
1、修改D:\cocos2d-x\cocos2d-x-2.1.4\create-android-project.bat
2、修改D:\cocos2d-x\cocos2d-x-2.1.4\create-android-project.sh
3、执行create-android-project.bat创建工程
以下代表成功
在D:\cocos2d-x\cocos2d-x-2.1.4目录下出现目录“test03”
打开后会看到
说明:
Classes里存放win32你要编译的项目的cpp文件。
pro.android里存放的是android的项目文件
Resources里存放的资源文件
首先你要把win32的项目中你要编译的所有的.cpp和.h文件全部移到Test03\Classes目录中。
然后把资源图片音乐什么的都移动到Test03\Resources目录下。
然后还要修改一个地方:
如果有增加.cpp源文件,则进入到 Test03\proj.android\jni下,用记事本打开Android.mk。
修改例如下:
保存。
默认没有增加文件时:
|
好了,接下来打开cygwin编译文件。但在此之前先配置两个环境变量吧!
右键计算机-属性-高级管理-环境变量-添加系统变量
名:NDK_ROOT 值:D:\DevTools\android-ndk-r8e (你的ndk目录) 名:COCOS2DX_ROOT 值:D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx(引擎目录) |
来到你的cygwin目录下,打开Cygwin.bat
接着输入 cd /cygdrive/d/cocos2d-x/cocos2d-x-2.1.4/test03/proj.android/
回车。也就是进入你的android项目的pro.android目录下。
接着输入 ./build_native.sh 这就启动了build_native.sh 这时就可以编译了。过程也比较慢。
编译成功
----------------------------------------------------------
如果:虽然之前已经配置了ndk的目录,但是我运行 输入./build_native.sh后报错提示我 未找到ndk! 我在网上找到了解决办法:
用记事本打开build_native.sh。修改如下
然后继续运行./build_native.sh吧。
打开D:\DevTools\adt-bundle-windows-x86_64-20130717\eclipse\eclipse.exe
Improt工程D:\cocos2d-x\cocos2d-x-2.1.4\test03\proj.android
导入项目后基本不会出错。但我的项目出了两个错。
(1)第一个是 src没有cocos2dx.lib包。有多种解决方法,可或导入工程或link代码等。
Problem里出现错误:Cocos2dxActivity cannot be resolved to a type
解决方法:重新设置cocos2dx的java代码目录。右键工程,Build Path->Link Source->Browse->你的cocos2dx的目录D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\platform\android\java\src,然后把Folder name改成其他的,如cocos2dx-src(别叫src就行)。
(2)第二个是AndroidMainifest.xml里一处。
以前是icon。改成ic_launcher。因为图标文件就叫这个。
最后,让程序跑到我们的android手机上(你电脑上需要有安装过手机的驱动程序,或者91助手,豌豆荚,手机360,或者QQ手机助手)。右键工程Run as
把apk直接运行在手机上吧。
总算结束了。只想说一句话,我去年买了个表。
1、非Administrator帐号执行create-android-project.bat的问题
解决办法:
见本文开始的环境说明:如何切换Administrator帐号,
或参考http://wenwen.soso.com/z/q174817238.htm
2、Console里出现错误error: format not a string literal and no format arguments,这说明你用的是ndk版本是r9
解决方法1:改用ndk-r8e
解决方法2:修改报错的那个源代码所在目录的Android.mk文件搜索LOCAL_CFLAGS,如果已经有了就再后面加上 -w,如果没有那就直接加一行 LOCAL_CFLAGS := -w