Windows 下编译 Quick-Cocos2dx-Community 的 Android 版本

内容选自:《Cocos2d-x 之Lua 核心编程》

Quick-Cocos2dx-Community 是跨平台的游戏引擎,支持时下流行的 Android 移动操作系统。本节将教大家如何在 Windows 上把已经开发好的游戏打包为 Android 上可运行的 apk 文件。

Quick-Cocos2dx-Community Android 打包分以下几个步骤:

  1. 安装 JDK
  2. 安装 ADT
  3. 安装 NDK
  4. 安装 Apache Ant
  5. 编译项目

前 4 个步骤搭建环境,仅需做一次,除非引擎更新需要更高的开发环境,否则不建议经常更新它们。如果编译环境已配置妥当,那么直接进入第 5 步:编译项目。

本文以 Windows 7 为例进行截图。

安装 JDK

JDK 安装包的下载请参考:Mac 下编译 Quick-Cocos2dx-Community 的 Andriod 版本

选择对应系统的 JDK 下载,Windows 64位系统下载jdk-7u75-windows-x64.exe。下载完毕后双击 exe 文件开始安装。一路 next 安装完毕后,打开 Windows 控制台,输入命令

$java -version

如果 JDK 成功安装,将显示如下的版本信息:

java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)

为了能正确使用 ant 进行命令行编译,还需要设置 JDK 的环境变量。

右键"计算机",选择弹出菜单中的"属性",然后在"控制面板主页"中点击"高级系统设置"。如下图所示:

seniorsysconfig.png

"系统属性" => "高级" => "环境变量"

envbtn.png

在"环境变量"的"用户变量"中加入以下变量:

变量:JAVA_HOME 值:C:\Program Files\Java\jdk1.7.0_75

注意:请根据本人 JDK 版本以及安装路径配置上述环境变量。

安装 ADT

ADT 安装包的下载请参考:Mac 下编译 Quick-Cocos2dx-Community 的 Andriod 版本

配置步骤:

  1. 把 Windows 64位系统对应的 adt-bundle-windows-x86_64-20140702.zip 解压到一个目录并更名为 adt-bundle-windows,例如D:\u0u0\adt-bundle-windows。目录下包含两个子文件夹 eclipse 和 sdk。

  2. 配置系统环境变量。
    在"环境变量"的"用户变量"中加入以下两个变量:

    变量:ANDROID_SDK_ROOT 值:D:\u0u0\adt-bundle-windows\sdk
    变量:ANDROID_HOME 值:D:\u0u0\adt-bundle-windows\sdk
    

    并在"系统变量"的 Path 变量的尾部添加以下字段:

    ;D:\u0u0\adt-bundle-windows\sdk\tools;D:\u0u0\adt-bundle-windows\sdk\platform-tools
    

    如下图所示:

    envconfig.png

    环境变量界面打开方式参见上面的 JDK 安装。
    请根据本人 ADT 解压路径配置上述环境变量。

安装 NDK

NDK 安装包的下载请参考:Mac 下编译 Quick-Cocos2dx-Community 的 Andriod 版本

配置步骤:

  1. 把 Windows 平台对应的 android-ndk-r9d-windows-x86_64.zip 解压到一个目录并更名为 android-ndk,例如D:\u0u0\android-ndk

  2. 配置系统环境变量。
    在"环境变量"的"用户变量"中加入以下两个变量:

    变量:ANDROID_NDK_ROOT, 值:D:\u0u0\android-ndk
    变量:NDK_ROOT 值:D:\u0u0\android-ndk
    

    环境变量界面打开方式参见上面的 JDK 安装。
    请根据本人 NDK 解压路径配置上述环境变量。

安装 Apache Ant

Apache Ant 安装包的下载请参考:Mac 下编译 Quick-Cocos2dx-Community 的 Andriod 版本

配置步骤:

  1. 把 apache-ant-1.9.4-bin.zip 解压到一个目录,例如D:\u0u0\ant

  2. 配置系统环境变量。
    在"环境变量"的"用户变量"中加入以下变量:

    变量:ANT_ROOT 值:D:\u0u0\ant\bin
    

    并在"系统变量"的 Path 变量的尾部添加以下字段:

    ;D:\u0u0\ant\bin
    

    环境变量界面打开方式参见上面的 JDK 安装。
    请根据本人 Ant 解压路径配置上述环境变量。

编译项目

在编译项目之前,我们先确认一下编译环境。
请确保,Quick-Cocos2dx-Community、JDK、ADT、NDK 和 Ant 都已正确安装,这 5 个工具均需要配置"系统环境变量"。

作者的 Quick-Cocos2dx-Community 安装在D:\cocos\quick-3.3,并使用 player3 新建了一个 test 项目位于D:\cocos\workspace\hello

注:创建工程不勾选"Copy Source Files",也就是不包含引擎代码。

现在就以 hello 项目为例说明如何编译 Android apk 包。

步骤:

  1. 切换到 hello 的 Android 工程路径。

    C:\Users\Administrator>d:
    
    D:\>cd D:\cocos\workspace\hello\frameworks\runtime-src\proj.android
    
  2. 清理编译临时文件。

    D:\cocos\workspace\hello\frameworks\runtime-src\proj.android>clean.bat
    

    不一定每次都需要清理,但是建议编译 release 版本一定要先清理后打包。

  3. 编译 Quick-Cocos2dx-Community 引擎的 C++ 核心。

    D:\cocos\workspace\hello\frameworks\runtime-src\proj.android>build_native.bat
    

    这个过程调用 NDK 进行编译,并生成 libcocos2dlua.so 文件。如果一切顺利,应该看到下面的 log 信息:

    [armeabi] SharedLibrary  : libcocos2dlua.so
    [armeabi] Install        : libcocos2dlua.so => libs/armeabi/libcocos2dlua.so
    make.exe: Leaving directory `D:/cocos/workspace/hello/frameworks/runtime-src/proj.android'
    
  4. 更新 test 的 Android 项目配置信息。

    D:\cocos\workspace\hello\frameworks\runtime-src\proj.android>android update project -p . -t 1
    

    这步只需做一次即可。

  5. 更新 Quick-Cocos2dx-Community 引擎工程的 Android 项目配置信息。

    D:\>cd D:\cocos\quick-3.3\cocos\platform\android\java
    
    D:\cocos\quick-3.3\cocos\platform\android\java>android update project -p . -t 1
    

    这步只需做一次即可。

  6. 修改 proj.android 目录下 project.properties 文件中关于 Quick-Cocos2dx-Community 引擎工程的引用路径。

    android.library.reference.1=../../../../../../quick-3.3/cocos/platform/android/java
    

    注意以下事项:

    • 每次执行第 4 步骤后,都需要重新配置 project.properties。
    • android.library.reference只认相对路径,所以 Quick-Cocos2dx-Community 和 test 最好都在同一盘符下。
  7. 切换回 test 工程下的 proj.android 目录,运行 ant 打包命令。

    D:\cocos\workspace\hello\frameworks\runtime-src\proj.android>ant debug
    

    注:如果遇到类似resolve to a path with no project.properties的错误提示信息,请仔细检查 project.properties 中的引擎相对路径是否正确配置。

    成功编译将看到如下 log 信息:

    -post-build:
    
    debug:
    
    BUILD SUCCESSFUL
    Total time: 19 seconds
    

    apk 文件位于proj.android/bin/hello-debug.apk

    ant 常用命令说明:

    1. ant debug用于生成自签名的测试 apk 包,可直接在 Android 手机上安装运行。
    2. ant release生成发布版本的 apk 包。默认配置生成的 hello-release-unsigned.apk 包是没有签名的,不能直接安装,还需要用签名工具进行签名。
    3. ant clean清理 java 编译环境。

    注:clean.bat是清理 NDK 编译环境。

标签: android

?>