码迷,mamicode.com
首页 > 移动开发 > 详细

将Cocos2d-x游戏打包成Android应用程序

时间:2014-10-07 20:33:24      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   http   color   io   os   使用   ar   

1. 打开Eclipse(已经装好CDT、ADT和NDK),导入cocos2d-x的Android项目。

2. 导入后java的源码会出现编译错误,打开cocos2d-x引擎的根文件夹\cocos2dx\platform\android\java\src,将src下的org文件拷贝到项目的src文件夹下,java文件编译通过

bubuko.com,布布扣

bubuko.com,布布扣

3. 配置环境变量和资源路径。右击项目名,按下Alt+Enter键,进入Resource中的Linked Resources中,点击new,出现下面对话框

bubuko.com,布布扣

bubuko.com,布布扣

Name输入COCOS2DX,Location输入cocos2d-x引擎的根文件夹,输入完点击OK后再次点击new,

Name输入PROJECT_LOC,Location输入cocos2d-x引擎的根文件夹\projects\你的项目\proj.android,然后点击OK,配置完资源路径的绑定

bubuko.com,布布扣

bubuko.com,布布扣

选中C/C++ Build,看到Build command: 把这个文本框中的内容改成你本机的ndk的安装文件夹\ndk-build.cmd(该文件夹不能有空格)

bubuko.com,布布扣

bubuko.com,布布扣

接下来选中C/C++ Build下的Environment,Add三个变量

bubuko.com,布布扣

三个变量的Name和Value各自是

COCOS2DX cocos2d-x引擎的根文件夹

NDK_MODULE_PATH cocos2d-x引擎的根文件夹;cocos2d-x引擎的根文件夹\cocos2dx\platform\third_party\android\prebuilt

NDK_ROOT ndk的安装文件夹

bubuko.com,布布扣

bubuko.com,布布扣

4. 把Resources下的资源文件拷贝到cocos2d-x引擎的根文件夹\projects\你的项目\proj.android\assets下

5. 编写jni\Android.mk文件

bubuko.com,布布扣

bubuko.com,布布扣

在LOCAL_SRC_FILES中增加你的项目的cpp文件名称

bubuko.com,布布扣

bubuko.com,布布扣

假设项目文件一多的话势必编写起来麻烦,并且须要更改时也非常easy编写错误,在下一篇文章中,用py脚本来避免这样的情况

编写完LOCAL_SRC_FILES后若果有引入第三方库的话还需改动下面两处(这里以iconv库为例)

下载iconv库,并将其拷贝到cocos2d-x根文件夹下

bubuko.com,布布扣

再增加下面两个地方

bubuko.com,布布扣

bubuko.com,布布扣

这里为什么要这样子写,能够从iconv根文件夹\android.mk下查找

bubuko.com,布布扣

bubuko.com,布布扣

这样就能够在项目中

#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
#include "../iconv/iconv.h"
#pragma comment(lib,"libiconv.lib") 
#elif (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#include "../../../libiconv/include/iconv.h"
#endif

在使用iconv时在android平台还要把const char**强转成char** (Android 真蛋疼),当中pin是const char**类型,

	#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
	if(-1 == iconv(iconvH,pin,&strLength,&outbuf,&outLength)){
	#elif (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
	if(-1 == iconv(iconvH,(char **)pin,&strLength,&outbuf,&outLength)){
	#endif


6. 编译项目,假设看到控制台输出

bubuko.com,布布扣

bubuko.com,布布扣

说明编译成功。


将Cocos2d-x游戏打包成Android应用程序

标签:android   style   blog   http   color   io   os   使用   ar   

原文地址:http://www.cnblogs.com/gcczhongduan/p/4009676.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!