Quickcocos从安装到打包

摘要:
Quick-Cocos2dx-Community是跨平台的游戏引擎,支持时下流行的Android移动操作系统。安装好cocos后顺便讲下安装Sublime和QuickXDev,直接复制《Cocos2d-x之Lua核心编程》中的东西,这本书这里还是可以用的,最后的打包就不用了,试了,不行。Quick-Cocos2dx-Community3.x对NDK的版本有着特殊的需求,不能低也不能高。我们的Quick-Cocos2dx-Community命令行打包需要用到ant工具。请确保,Quick-Cocos2dx-Community、JDK、ADT、NDK和Ant都已正确安装,这5个工具均需要配置"系统环境变量"。

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了)

Quickcocos从安装到打包第1张

点击exe直接安装,为了以后使用方便,建议把建立一个cocos文件夹,把所有版本都放在cocos下,在cocos下建立一个workspace用来存放工程。安装好cocos后顺便讲下安装Sublime和QuickXDev,直接复制《Cocos2d-x之Lua核心编程》中的东西,这本书这里还是可以用的,最后的打包就不用了,试了,不行。

Quickcocos从安装到打包第2张

Quickcocos从安装到打包第3张

Quickcocos从安装到打包第4张

Quickcocos从安装到打包第5张

Quickcocos从安装到打包第6张

(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 编译环境,有以下几点原因:

  1. ADT 集成了 Android 开发需要的所有包(除 NDK 外),可以节省环境搭建的时间。
  2. 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:Androidadt-bundle-windows(这是我的路径,我把本次要安装的ADT、NDK、Apache Ant都放在了Android路径下)。目录下包含两个子文件夹 eclipse 和 sdk。

Quickcocos从安装到打包第7张

配置环境变量:

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


变量:ANDROID_SDK_ROOT 值:D:Androidadt-bundle-windowssdk
变量:ANDROID_HOME 值:D:Androidadt-bundle-windowssdk

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

D:Androidadt-bundle-windowssdk	ools;D:Androidadt-bundle-windowssdkplatform-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:Androidandroid-ndk(这是我的路径)

Quickcocos从安装到打包第8张

配置环境变量:

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


变量:ANDROID_NDK_ROOT, 值:D:Androidandroid-ndk

变量:NDK_ROOT 值:D:Androidandroid-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:Androidant(这是我的路径)

Quickcocos从安装到打包第9张

配置环境变量:

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

变量:ANT_ROOT 值:D:Androidantin

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

D:Androidantin

(6)编译项目

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

① 使用 player3 新建了一个 test 项目位于D:cocosworkspacemytest。(注:创建工程不勾选"Copy Source Files",也就是不包含引擎代码。)以 mytest项目为例说明如何编译 Android apk 包。

②切换到 mytest的 Android 工程路径,清理编译临时文件。(不一定每次都需要清理,但是建议编译 release 版本一定要先清理后打包)

C:UsersAdministrator>d:
 
D:>cd D:cocosworkspacemytestframeworks
untime-srcproj.android

D:cocosworkspacemytestframeworks
untime-srcproj.android>clean.bat

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

D:cocosworkspacemytestframeworks
untime-srcproj.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:cocosworkspacemytestframeworks
untime-srcproj.android>android update project -p . -t 1

⑤更新 Quick-Cocos2dx-Community 引擎工程的 Android 项目配置信息。(这步只需做一次即可)

D:>cd D:cocosquick-3.3cocosplatformandroidjava
 
D:cocosquick-3.3cocosplatformandroidjava>android update project -p . -t 1

⑥修改 proj.android 目录下 project.properties 文件中关于 Quick-Cocos2dx-Community 引擎工程的引用路径。(注意:路径根据自己的工程相对路径设置,下面是我的路径)

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

Quickcocos从安装到打包第10张

⑦切换回 test 工程下的 proj.android 目录,运行 ant 打包命令。(注:如果遇到类似resolve to a path with no project.properties的错误提示信息,请仔细检查 project.properties 中的引擎相对路径是否正确配置。)

D:cocosworkspacemytestframeworks
untime-srcproj.android>ant debug

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

Quickcocos从安装到打包第11张

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

ant 常用命令说明(注:clean.bat是清理 NDK 编译环境):

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

手机安装apk测试,成功:

Quickcocos从安装到打包第12张

Quickcocos从安装到打包第13张

免责声明:文章转载自《Quickcocos从安装到打包》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇转:C语言中的typeof关键字Django使用redis实现缓存下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android 三种动画详解

Android 三种动画详解 1 背景 不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今天来一发Android应用的各种Animation大集合。英文厉害的请直接移步参考Android Developer。 Android系统提供了很多丰富的API去实现UI的2D与3D动画,最主要的划分可以分为如...

[转] Android自动测试之monkeyrunner工具(二)

monkeyrunner工具  前言: 最近开始研究Android自动化测试方法,对其中的一些工具、方法和框架做了一些简单的整理,其中包括android测试框架、CTS、Monkey、Monkeyrunner、benchmark、其它test tool等等。因接触时间很短,很多地方有不足之处,希望能和大家多多交流。   一、什么是monkeyrunner...

[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目

(1)项目导入JAR包:1、在项目目录里建立一个libs目录,将外部jar包拷贝在里面。2、右键点击项目,Bulid Path->Configure Build Path3、在设置Libraies项,选择刚才的位置添加jar包。3、在Order and Export项里,将外部jar包选中。4、clean项目后,重新编译,这时的apk包里应该是包含外...

【Android】缩略图Thumbnails

在Android,多媒体文件(视频和图片)都是有缩略图的,在很多应用中,我们需要获取这些缩略图。比如最近在做一个类似相册的应用,需要扫描相册里面的图片,然后获取其缩略图,使用GridView去展示缩略图,当点击之后,我们需要获取其原始图,所以相关的需求如下: 1)获取缩略图(一个问题是:是否所有的图片以及视频都有缩略图?); 2)将缩略图和原始图关联起来;...

Android 获取 View 宽高的常用正确方式,避免为零

相信有很多朋友都有过在 Activity 中通过 getWidth() 之类的方法获取 View 的宽高值,可能在 onCreate() 生命周期方法中,也可能在 onResume() 生命周期方法中。然而,不幸的是,并不能获取所要的结果,宽高值均为 0。 如果对 View 的绘制显示流程熟悉的话,就会知道问题所在。我们知道,在自定义 View 时,通...

如何将cocos、spine等骨骼文件转换成dragonbones的骨骼文件

简介 本片blog主要给大家提供一个统一的骨骼动画解决方案,无论你之前用的是cocos自带的骨骼,还是spine,或者是两者都有,都可以转换成dragonbones骨骼,然后加到游戏中使用。 如果你的事2.3及以后的版本的骨骼文件直接就可以导入,这里就不做介绍了。 工具 Dragonbones pro 4.5 下载地址http://dragonbones....