一、首先准备工作是在mac下搭建起Eclipse的 Android环境,因为eclipse有mac版,而Android SDK ADT也都有mac版,很容易搭建的,
eclipse for mac下载地址:http://eclipse.org/downloads/
Android SDK for mac下载地址http://developer.android.com/sdk/index.html
Android的ADT:进入菜单中的 "Help" -> "Install New Software",点击Add...按钮,弹出对话框要求输入Name和Location:Name自己随便取,Location输入http://dl-ssl.google.com/android/eclipse,在线下载有时会假死,不会有反应,可以进行离线下载,下载的ADT的后缀必须是.zip,离线下载时需断开网络。我安装时是离线安装的,ADT版本为17.0.0,之前用的,比较习惯。
如果SDK版本高于ADT,则出现如下问题:
This Android SDK requires Android Developer Toolkit version 21.0.0 or above
原因:出现这个问题的原因是SDK更新,导致SDK版本过高,使ECLIPSE提示更新ADT;
解决方法:将android-SDK\tools\lib下的plugin.prop文件中的version改成当前的版本,如:
# begin plugin.prop plugin.version=21.0.0 # end plugin.prop
——> # begin plugin.prop plugin.version=17.0.0 # end plugin.prop
二、正常在Eclipse搭建好Android环境后,我们开始搭建Cocos2d-X在Xcode中的环境,
确保你先下载最新版本的cocos2d-x。(我配置时版本为2.1.1)
随便在你的硬盘的某个位置上面解压就可以了。注意,这个解压出来的文件夹的完整路径名,我们之后会用一个统一的别名 $COCOS2DX_HOME来指代。
现在,你已经下载到源码了,让我们来安装项目模板吧!你可以先cd到$COCOS2DX_HOME这个目录(指你刚刚解压缩代码的存放路径)下面去。在安装模板之前,先退出Xcode,然后打开一个终端,并输入下面的命令:
cd $COCOS2DX_HOME sudo ./install-templates-xcode.sh -u
注意: 在上面所示的代码中,你不能直接输入$COCOS2DX_HOME,而要输入实际的路径。如果你直接输入了$COCOS2DX_HOME是不会有任何反应的。你也可以进行环境变量的配置,方法就是打开~/.bash_profile文件,用终端输入pico .bash_profile ,然后用export来定义环境变量就ok了。下面也会进行配置。
你可能会被要求输入管理员密码(加了-u应该是不需要输入密码的,不加-u就需要输入),之后的过程就非常简单了。在模板安装好之后,启动xcode,然后创建一个新的项目。这时,你可以在项目模板对话框中看到有cocos2d-x的模板了。不用担心,cocos2d-x的模板与cocos2d的模板并不会有冲突,因此,你还是可以创建cocos2d的项目。
让我们来试一下新模板吧!打开Xcode,然后创建一个新的工程,选择 iOS\cocos2d-x\cocos2dx模板,如下图所示:
三、完成以上两步后,我们下载必要的NDK(大家知道Cocos2d-X底层是C++),下载地址: http://developer.android.com/sdk/ndk/index.html ,
我下的版本是android-ndk-r8d-darwin-x86.tar.bz2
NDK 下载后解压即可;
我把NDK和SDK放在一个文件夹下
四、完成前三步后,然后确认我们mac上的JDK和 ANT是否正常:
打开“终端”,然后输入 java -version 回车
然后输入 ant -version 回车
截图如下:
Ant 最好使用1.8.0或更新的版本
五、现在我们开始配置Cocos2d-X与编译等相关路径;
这里先介绍下一些文件夹路径,供大家后面配置路径作为参考:
Cocos2d-X的路径: /Users/kaoji/Desktop/cocos2d-2.1beta3-x-2.1.1
Android SDK 路径:/Users/kaoji/Desktop/AndroidTools/android-sdks
Android NDK 路径:/Users/kaoji/Desktop/AndroidTools/android-ndk-r8b
OK,下面我们开始配置路径,首先打开“终端”,然后输入 pico .bash_profile 回车
然后手动将以下路径敲入:
注意路径最好不要有空格!
输入完成之后,Control+x 进行保存,然后提示是否保存,输入 y ,最后回车即可!
六、新创建一个android项目步骤如下:
1.打开你的“终端”,输入 cd $COCOS2DX_ROOT 回车;
然后输入 ./create-android-project.sh 回车;
OK,到此开始进入创建了项目了;
2. 首先提示你如下信息:
Input package path. For example:
这里是提示输入包路径!这里我随便输入一个: com.cocos2dx.zwl 回车;
3. 提示如下信息:
Now cocos2d-x supports Android 2.1-update1, 2.2, 2.3 & 3.0
Other versions have not tested.
Available Android targets:
id: 1 or "android-3"
Name: Android 1.5
Type: Platform
API level: 3
Revision: 4
Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id: 2 or "android-4"
Name: Android 1.6
Type: Platform
API level: 4
Revision: 3
Skins: HVGA, QVGA, WVGA800 (default), WVGA854
id: 3 or "android-7"
Name: Android 2.1-update1
Type: Platform
API level: 7
Revision: 2
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
id: 4 or "android-8"
Name: Android 2.2
Type: Platform
API level: 8
Revision: 2
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
id: 5 or "android-10"
Name: Android 2.3.3
Type: Platform
API level: 10
Revision: 1
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
id: 6 or "android-11"
Name: Android 3.0
Type: Platform
API level: 11
Revision: 1
Skins: WXGA (default)
id: 7 or "android-12"
Name: Android 3.1
Type: Platform
API level: 12
Revision: 2
Skins: WXGA (default)
input target id:
这里是提示让你选择一个SDK api的id,如果你的sdk路径配置不正确这里不会显示出你当前Android SDK的各个版本,我输入5(android-2.3.3),回车;
4.接着提示如下信息:
input your project name:
这里提示输入你的项目名,OK,我输入Cocos2dXTestProject回车;
5. (别着急关闭“终端”等下需要编译新建的项目哦)OK,到此新项目创建完毕,那么默认创建的项目,会在你的 COCOS2DX_ROOT路径下,如下图:(这里可以直接在“终端”输入 ls -l 直接浏览到此项目名)
七、导入已有的项目
新建的项目成功了,现在就要把自己的项目中的Classes和Resources两个文件的内容拷贝到新建项目的两个文件中。
进入proc.android/jni/Android.mk,中将自己项目的所有cpp文件写入到LOCAL_SRC_FILES中,注意“\”后面无空格。接着打开proc.android/jni/hellocpp/main.cpp,将有关helloworld的代码删除,也就是一行头文件。
OK,现在来编译刚才新建的项目,继续在“终端”输入: cd Cocos2dXTestProject/ 回车;(这里是到你刚才新建的项目中,你可以输入 cd 项目名 )
继续在“终端”输入: cd android 回车;
继续在“终端”输入: ./build_native.sh 回车;开始编译
耐心等待一会即可,编译完成后,项目中proc.android/libs下有armeabi文件,里面有libgame.so,它是将cpp文件打包成的动态库。没有则就是失败。
八、打开Eclipse,在Eclipse中New->Android Project->勾选 Create project from existing source,然后选择新建项目的路径,这里注意!这个路径不是你的项目名的路径,是项目名下的android路径,例如我当前创建的项目为Cocos2dXTestProject,那么路径则是XXXX/Cocos2dXTestProject/proc.android 如下图:
完成后你会发现src目录下的org.cocos2d为空,程序也有错,原来2.x版本以后cocos2d的类需要自己导入,你可以到cocos2d-2.1beta3-x-2.1.1\cocos2dx\platform\android\java\src\org目录下复制lib文件夹,里面就是所需要的类,就是添加cocos2d-x的jar库。
导进去后错误消失,开始运行,模拟器会提示运行停止,这不一定有问题,你还需真机运行下,如果真机下能运行,整个想项目OK了。现在模拟器速度慢也有很多问题。
主要参考文章:
http://www.himigame.com/android-game/645.html
http://www.himigame.com/iphone-cocos2dx/636.html