author: Rect 2015/03/10 cocos2d-x version: - 2.2.5 ndk version: r9 jdk version: 1.8
鉴于每次配置各种环境都要找各种教程,实在神烦,所以不如自己整理出来.
setp 1.安装或解压如下全部工具到一个文件夹,例如我的 E:\tool\android
工具 | 文件名 | 安装或者解压后路径 |
---|---|---|
NDK 编译C++需要使用的框架 | android-ndk-r9-windows-x86_64.exe | E:\tool\android\android-ndk-r9 |
SDK 安卓SDK | android-sdk_r23.0.2-windows.zip | E:\tool\android\android-sdk-windows |
JDK java虚拟环境 | jdk-8u40-windows-x64.exe | E:\tool\android\Java |
ADT eclipse+adt集成环境 | adt-bundle-windows.zip | E:\tool\android\adt-bundle-windows |
Cygwin调试编译C++用的工具 | setup-x86_64.exe | 安装选项请看图,路径随意,但不可有空格 |
step 2.增加环境变量,我的电脑-右键属性-高级系统设置-环境变量
例如我本地的配置:
JDK8
JAVA_HOME -> E:\tool\android\Java\
Path 增加 %JAVA_HOME%\bin
这个务必添加,能大幅度加快编译速度
NDK
ANDROID_NDK_PATH -> E:\tool\android\android-ndk-r10d
Path 增加;%ANDROID_NDK_PATH%
关于NDK,我个人使用过r8,r9.我推荐r9,因为我r9使用的时间比较长.一直没出什么问题.鉴于我们项目几个地方用到了C++11的特性,如果非要android上支持这些特性 可以把NDK升级到r10.因为目前仅仅r10支持C++11
SDK
ANDROID_SDK_PATH -> E:\tool\android\android-sdk-windows
CYGWIN
CYGWIN_ROOT -> C:\cygwin64\bin
Path 增加;%CYGWIN_ROOT%
COCOS2DX
若启用Cygwin编译C++则需要
COCOS2DX_ROOT -> E:\code\cocos2dx225
step 3.启动eclipse配置环境
打开adt-bundle-windows\eclipse\eclipse.exe
按下图以此选择之前的SDK解压文件夹,不要使用adt-bundle-windows文件夹下的SDK,因为这个SDK只有一个默认的版本.而之前android-sdk-windows文件夹下的是下载完整的通用几个SDK版本.
step 4.创建helloworld项目,连入手机测试.
手机上开启调试模式,普通手机是在 设置-开发者选项 里.特殊手机问百度谷歌.确保电脑安装正确的手机驱动.
电脑上打开eclipse->file->new->project 一路创建下去,知道产生两个项目.
按下F11 选第一个编译安卓应用程序,若能出现以下窗口 则表示正确连接手机并可启动调试.
到这里就完成了安卓原生开发环境的配置. 由于我们项目有C++代码需要使用NDK,所以接下来要配置NDK编译调试环境.当然也可以配在eclipse中,eclipse可支持通过NDK编译C++,但是这种方法会让人过度依赖eclipse,我不推荐.
step 4.配置NDK编译调试环境
确保安装完毕Cygwin 并正常启动.
加入.bash_profile全局配置
例如我本地的:C:\cygwin64\home\Administrator\.bash_profile
export ANDROID_NDK=`cygpath -u "$ANDROID_NDK_PATH"` export ANDROID_SDK=`cygpath -u "$ANDROID_SDK_PATH"` export JAVA_HOME=`cygpath -u "$JAVA_HOME"` export COCOS2DX_ROOT=`cygpath -u "$COCOS2DX_ROOT"` NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt export NDK_MODULE_PATH
测试NDK编译环境,如图四个步骤即可:
若能看到最后的输出则代表环境配置成功.若输出 ndk-build 命令不存在 则请检查系统环境变量是否正确配置.
step 5.cocos2d-x for android 编译测试
由于cocos2d-x2.2.5这个版本的helloCpp项目有个小BUG,所以测试之前先fix.
//在samples\Cpp\HelloCpp\Classes\AppDelegate.h 36行的地方加入如下代码 // 帧更新 virtual void UpdateFrame( float dt ){ };
打开Cygwin 输入如下命令.若能输出下图信息 则代表整个编译环境配置完毕!恭喜
cd $COCOS2DX_ROOT\samples\Cpp\HelloCpp\proj.android ndk-build
Tips:
ndk-build 命令简易入门.一般我使用以下几个命令:
- ndk-build 直接编译release版本,不清理已经生成的 类似于vs的 全部生成
- ndk-build clean all 先清理完毕再编译release版本 类似于vs的 全部重新生成
- ndk-build NDK_DEBUG=1 直接编译debug版本,不清理已经生成的
- ndk-build clean all NDK_DEBUG=1 先清理后编译debug版
- ndk-build NDK_LOG=1 编译的时候输出所有详尽信息
- ndk-build -B 强制重新编译已经编译完成的代码
- ndk-build -C /opt/myTest/ 到指定目录编译native代码
在项目开发阶段建议 使用 3或者4.我会在另外的文档 详细介绍NDK的命令.大部分时候只使用上面几个足矣.
总结的不错,还好用mac,环境、打包等都好配置啊
没办法 团队不可能全部人都用mac啊.