1、下载Android环境html
搭建Android环境须要用到Android SDK、NDK、Ant和JDK;java
下载Android SDK android
下载Android NDk apache
下载Android JDK ubuntu
下载Ant api
其中JDK是须要安装的,其余的都直接解压便可。将SDK NDK 和ANT解压缩到同一个文件夹中,我解压后文件都放在了e:\Android文件夹下oracle
SDK若是下载下来的adt文件那么把里面的SDK文件夹考出来,修改后工具
2、配置JDK网站
在JDK安装完毕以后,须要手动进行环境变量的配置ui
一、系统变量里新建JAVA_HOME变量,变量值为:C:\Program Files\Java\jdk1.8.0_05(根据本身的安装路径填写)
二、新建系统变量classpath变量,变量值为:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意前面的“.”不要忘记了)
三、在系统变量path变量(已存在不用新建)添加变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin(注意变量值之间用“;”隔开)
环境变量的解析:
JAVA_HOME:jdk的安装路径
classpath:java加载类路径,只有类在classpath中java命令才能识别,在路径前加了个"."表示当前路径。
path:系统在任何路径下均可以识别java,javac命令。
在配置完成以后,咱们打开cmd命令窗口,输入java或javac 回车,若是不是打印“java不是内部或外部命令”那就说明配置成功了。
3、配置Ant环境变量
把ant的存放路径加入系统Path变量。
4、配置cocos2dx 3.1 Android 环境关联
以上已作好准备工做,打开cocos2dx目录下的 setup.py。
输入ndk的路径。
输入sdk路径
最后输入的是 ant的路径。
OK,三个路径都已经配置完毕:
5、打包Apk
(注意:在打包apk以前须要修改proj.android/jni文件夹下的Android.mk文件 添加本身新增的CPP文件,这里的新增指的是非cocos2dx生成的项目文件(本身新增的文件)。必定要把本身新增的文件或文件夹包含进apk。)
首先咱们拿官方的 cpp-tests项目来试手吧!按住shift键+鼠标右键 选择在此处打开命令窗口。
而后就可使用 cocos compile -p android –-ap 20方式编译APK文件了(--ap 20是指定android平台,我用的是20,也有19等其余的,根据跟人下载的而定)
而后运行:cocos run -p android --ap 20
当出现:“ -waiting for device - error: ”的时候按Ctrl+C终止就能够了。
漫长的等待吧,固然这里要提醒一点3.2版本用的是 android-20,若是E:\Android\sdk\platforms目录下没有android-20 请建立一个空的。
等待完毕以后 看下这个文件夹下的 apk吧!能够安装到手机上试一下了。
若是须要把项目在真机上弄成竖屏,只需在proj.android文件夹下的AndroidManifest.xml中改一改, android:screenOrientation="landscape"(横屏),android:screenOrientation="portrait"(竖屏),它默认为横屏
6、异常处理
一、 Android platform not specified, searching a default one...
Can't find right android-platform for project :
"F:\cocos2d-x-3.1.1\tests\cpp-tests\proj.android".
The android-platform should be equal/larger than 20
若是你遇到这个问题,那么就要在
下建立一个空的android-20文件夹,这个问题坑了我好久!同时要查看命令是不是 –ap 20(双-)。
检查\proj.android目录下的project.properties是不是android-20
二、make.exe: *** No rule to make target `/home/tubuntu/game/android-ndk-r9d/sources/android/cpufeatures/cpu-features.c', needed by `obj/local/armeabi/objs/cpufeatures/cpu-features.o'. Stop.
解决办法:从后缀名来看,这个确定是编译中间文件(能够删除)。而Make 的No rule to make target则通常说明是已经存在了,不用再编译。因此咱们进入E:\cocos2d-x-3.2\Projects\HelloCpp111\proj.android\obj\local\armeabi把objs-debug文件夹下面的文件(包括文件夹)全删除。
三、make.exe:***obj/local/libcoccos2dcpp.so……
解决办法:产生这个缘由的是没有在Android.mk 文件中添加本身的文件,进入E:\cocos2d-x-3.2\Projects\HelloCpp111\proj.android\jni 文件夹下打开Android.mk文件,添加本身的文件,以下图:
四、 编译时,提示找不到gcc工具链 (Couldn't find the gcc toolchain)。
这个问题也烦了我好久!去检查下ndk的配置路径!NDK_ROOT是否正确!而后3.1版本须要的NDK是最新的版本,去安卓网站下一个最新的版本r9d吧!
五、 若是遇到android api问题
找到运行进行更新,看缺哪一个api就更新哪一个,不过这个更新比较慢,缘由google被禁了
六、出现 build.xml:932 build.xml:950 错误
这是因为你的资源文件中出现了中文命名的文件,AAPT是没有办法识别的, IOS是能够识别的,可是AAPT不行,因此最好不要使用中文命名任何文件或者文件夹。