Quick-Cocos2dx-Community 是跨平台的游戲引擎,支持時下流行的 Android 移動操作系統。本節將教大家如何在 Windows 上把已經開發好的游戲打包為 Android 上可運行的 apk 文件。
Quick-Cocos2dx-Community Android 打包分以下幾個步驟:
(1)安裝quick cocos 3.3
(2)安裝JDK
(3)安裝ADT
(4)安裝NDK
(5)安裝Apache Ant
(6)編譯項目
(1)安裝quick cocos 3.3(由於公司的項目是用的3.3,而且以前用了3.6.4,試了很久都沒有成功,所以就卸載后換成3.3了)

點擊exe直接安裝,為了以后使用方便,建議把建立一個 cocos文件夾,把所有版本都放在cocos下,在cocos下建立一個workspace用來存放工程。安裝好cocos后順便講下安裝Sublime和QuickXDev,直接復制《Cocos2d-x之Lua核心編程》中的東西,這本書這里還是可以用的,最后的打包就不用了,試了,不行。





(2)安裝JDK
因為Unity打包時安裝過了,所以這步跳過
(3)安裝ADT
ADT 是 Android Developer Tools 的縮寫,它包含下面的內容:
- Eclipse + ADT plugin
- Android SDK Tools
- Android Platform-tools
- The latest Android platform
- The latest Android system image for the emulator
Android 官方已把 Android Studio 推為官方的 Android 開發環境,但我們這里依然選擇 ADT 作為 Android 編譯環境,有以下幾點原因:
- ADT 集成了 Android 開發需要的所有包(除 NDK 外),可以節省環境搭建的時間。
- ADT 方便進行命令行編譯,為自動打包奠定基礎。
ADT 最新版各平台下載地址:
http://dl.google.com/android/adt/adt-bundle-windows-x86-20140702.zip
http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip
http://dl.google.com/android/adt/adt-bundle-mac-x86_64-20140702.zip
配置步驟:
把 Windows 64位系統對應的 adt-bundle-windows-x86_64-20140702.zip 解壓到一個目錄並更名為 adt-bundle-windows,例如D:\Android\adt-bundle-windows(這是我的路徑,我把本次要安裝的ADT、NDK、Apache Ant都放在了Android路徑下)。目錄下包含兩個子文件夾 eclipse 和 sdk。

配置環境變量:
① 在"環境變量"的"用戶變量"中加入以下兩個變量:
變量:ANDROID_SDK_ROOT 值:D:\Android\adt-bundle-windows\sdk
變量:ANDROID_HOME 值:D:\Android\adt-bundle-windows\sdk
②在"系統變量"的 Path 變量的尾部添加以下字段:
D:\Android\adt-bundle-windows\sdk\tools;D:\Android\adt-bundle-windows\sdk\platform-tools
(4)安裝NDK
Android SDK 基於 Java 實現,要編譯 C++ 代碼,還需要 NDK 環境。
Quick-Cocos2dx-Community 3.x 對 NDK 的版本有着特殊的需求,不能低也不能高。准確的說,我們需要安裝 NDK 的 r9d 版本。
r9d 下載地址:
http://dl.google.com/android/ndk/android-ndk-r9d-windows-x86.zip
http://dl.google.com/android/ndk/android-ndk-r9d-windows-x86_64.zip
http://dl.google.com/android/ndk/android-ndk-r9d-darwin-x86.tar.bz2
http://dl.google.com/android/ndk/android-ndk-r9d-linux-x86.tar.bz2
http://dl.google.com/android/ndk/android-ndk-r9d-linux-x86_64.tar.bz2
配置步驟:
把 Windows 平台對應的 android-ndk-r9d-windows-x86_64.zip 解壓到一個目錄並更名為 android-ndk,例如D:\Android\android-ndk(這是我的路徑)。

配置環境變量:
①在"環境變量"的"用戶變量"中加入以下兩個變量:
變量:ANDROID_NDK_ROOT, 值:D:\Android\android-ndk
變量:NDK_ROOT 值:D:\Android\android-ndk
(5)安裝Apache Ant
Apache Ant 是一個將軟件編譯、測試、部署等步驟聯系在一起加以自動化的一個工具,大多用於 Java 軟件開發環境。我們的 Quick-Cocos2dx-Community 命令行打包需要用到 ant 工具。
Ant 官方網站:http://ant.apache.org/
我們使用的版本是1.9.4
配置步驟:
把 apache-ant-1.9.4-bin.zip 解壓到一個目錄,例如D:\Android\ant(這是我的路徑)。

配置環境變量:
①在"環境變量"的"用戶變量"中加入以下變量:
變量:ANT_ROOT 值:D:\Android\ant\bin
②在"系統變量"的 Path 變量的尾部添加以下字段:
D:\Android\ant\bin
(6)編譯項目
在編譯項目之前,我們先確認一下編譯環境。
請確保,Quick-Cocos2dx-Community、JDK、ADT、NDK 和 Ant 都已正確安裝,這 5 個工具均需要配置"系統環境變量"。
① 使用 player3 新建了一個 test 項目位於D:\cocos\workspace\mytest。(注:創建工程不勾選"Copy Source Files",也就是不包含引擎代碼。)以 mytest 項目為例說明如何編譯 Android apk 包。
②切換到 mytest的 Android 工程路徑,清理編譯臨時文件。(不一定每次都需要清理,但是建議編譯 release 版本一定要先清理后打包)
C:\Users\Administrator>d:
D:\>cd D:\cocos\workspace\mytest\frameworks\runtime-src\proj.android
D:\cocos\workspace\mytest\frameworks\runtime-src\proj.android>clean.bat
③編譯 Quick-Cocos2dx-Community 引擎的 C++ 核心。
D:\cocos\workspace\mytest\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'
④更新 test 的 Android 項目配置信息。(這步只需做一次即可)
D:\cocos\workspace\mytest\frameworks\runtime-src\proj.android>android update project -p . -t 1
⑤更新 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
⑥修改 proj.android 目錄下 project.properties 文件中關於 Quick-Cocos2dx-Community 引擎工程的引用路徑。(注意:路徑根據自己的工程相對路徑設置,下面是我的路徑)
android.library.reference.1=../../../../../quick-3.3/cocos/platform/android/java

⑦切換回 test 工程下的 proj.android 目錄,運行 ant 打包命令。(注:如果遇到類似resolve to a path with no project.properties的錯誤提示信息,請仔細檢查 project.properties 中的引擎相對路徑是否正確配置。)
D:\cocos\workspace\mytest\frameworks\runtime-src\proj.android>ant debug
成功編譯將看到如下 log 信息:

apk 文件位於proj.android/bin/mytest-debug.apk
ant 常用命令說明(注:clean.bat是清理 NDK 編譯環境):
ant debug用於生成自簽名的測試 apk 包,可直接在 Android 手機上安裝運行。ant release生成發布版本的 apk 包。默認配置生成的 hello-release-unsigned.apk 包是沒有簽名的,不能直接安裝,還需要用簽名工具進行簽名。ant clean清理 java 編譯環境。
手機安裝apk測試,成功:


