将Cocos2d-x游戏打包成Android应用程序
2014-05-11 15:41
204 查看
1. 打开Eclipse(已经装好CDT、ADT和NDK),导入cocos2d-x的Android项目。
2. 导入后java的源代码会出现编译错误,打开cocos2d-x引擎的根目录\cocos2dx\platform\android\java\src,将src下的org文件复制到项目的src文件夹下,java文件编译通过
3. 配置环境变量和资源路径。右击项目名,按下Alt+Enter键,进入Resource中的Linked Resources中,点击new,出现以下对话框
Name输入COCOS2DX,Location输入cocos2d-x引擎的根目录,输入完点击OK后再次点击new,
Name输入PROJECT_LOC,Location输入cocos2d-x引擎的根目录\projects\你的项目\proj.android,然后点击OK,配置完资源路径的绑定
选中C/C++ Build,看到Build command: 把这个文本框中的内容改成你本机的ndk的安装目录\ndk-build.cmd(该目录不能有空格)
接下来选中C/C++ Build下的Environment,Add三个变量
三个变量的Name和Value分别是
COCOS2DX cocos2d-x引擎的根目录
NDK_MODULE_PATH cocos2d-x引擎的根目录;cocos2d-x引擎的根目录\cocos2dx\platform\third_party\android\prebuilt
NDK_ROOT ndk的安装目录
4. 把Resources下的资源文件复制到cocos2d-x引擎的根目录\projects\你的项目\proj.android\assets下
5. 编写jni\Android.mk文件
在LOCAL_SRC_FILES中加入你的项目的cpp文件名
如果项目文件一多的话势必编写起来麻烦,而且需要更改时也很容易编写错误,在下一篇文章中,用py脚本来避免这种情况
编写完LOCAL_SRC_FILES后若果有引入第三方库的话还需修改以下两处(这里以iconv库为例)
下载iconv库,并将其复制到cocos2d-x根目录下
再加入以下两个地方
这里为什么要这样子写,可以从iconv根目录\android.mk下查找
这样就可以在项目中
在使用iconv时在android平台还要把const char**强转成char** (Android 真蛋疼),其中pin是const char**类型,
6. 编译项目,如果看到控制台输出
说明编译成功。
2. 导入后java的源代码会出现编译错误,打开cocos2d-x引擎的根目录\cocos2dx\platform\android\java\src,将src下的org文件复制到项目的src文件夹下,java文件编译通过
3. 配置环境变量和资源路径。右击项目名,按下Alt+Enter键,进入Resource中的Linked Resources中,点击new,出现以下对话框
Name输入COCOS2DX,Location输入cocos2d-x引擎的根目录,输入完点击OK后再次点击new,
Name输入PROJECT_LOC,Location输入cocos2d-x引擎的根目录\projects\你的项目\proj.android,然后点击OK,配置完资源路径的绑定
选中C/C++ Build,看到Build command: 把这个文本框中的内容改成你本机的ndk的安装目录\ndk-build.cmd(该目录不能有空格)
接下来选中C/C++ Build下的Environment,Add三个变量
三个变量的Name和Value分别是
COCOS2DX cocos2d-x引擎的根目录
NDK_MODULE_PATH cocos2d-x引擎的根目录;cocos2d-x引擎的根目录\cocos2dx\platform\third_party\android\prebuilt
NDK_ROOT ndk的安装目录
4. 把Resources下的资源文件复制到cocos2d-x引擎的根目录\projects\你的项目\proj.android\assets下
5. 编写jni\Android.mk文件
在LOCAL_SRC_FILES中加入你的项目的cpp文件名
如果项目文件一多的话势必编写起来麻烦,而且需要更改时也很容易编写错误,在下一篇文章中,用py脚本来避免这种情况
编写完LOCAL_SRC_FILES后若果有引入第三方库的话还需修改以下两处(这里以iconv库为例)
下载iconv库,并将其复制到cocos2d-x根目录下
再加入以下两个地方
这里为什么要这样子写,可以从iconv根目录\android.mk下查找
这样就可以在项目中
#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. 编译项目,如果看到控制台输出
说明编译成功。
相关文章推荐
- 将Cocos2d-x游戏打包成Android应用程序
- 将Cocos2d-x游戏打包成Android应用程序
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可!
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Xcode编写&编译代码,Android导入打包运行即可!
- iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Xcode编写&编译代码,Android导入打包运行即可!
- 【Cocos2d-X(2.x) 游戏开发系列之二】cocos2dx最新2.0.1版本跨平台整合NDK+Xcode,Xcode编写&编译代码,Android导入打包运行即可!
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可!
- 【Cocos2d-X 游戏引擎】 Win32打包生成 Android 项目
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可! 推荐
- iOS和android游戏纹理优化和内存优化(cocos2d-x)
- cocos2d-x项目打包成android apk过程中所遇到的错误
- Android应用程序或游戏开发前的一些忠告
- cocos2d-x学习笔记(十)android自动化打包bat脚本
- Android应用程序打包时,出现错误:"XXX" is not translated in .....
- html5游戏移植到android并打包成apk,加广告《二》
- android应用程序的混淆打包
- 【Cocos2d-x游戏引擎开发笔记(8)】在ubuntu上将游戏发布到Android
- Cocos2d-x 3.0修改Android平台帧率fps - 解决游戏运行手机发热发烫问题
- iOS和android游戏纹理优化和内存优化(cocos2d-x)(转载)
- Cocos2d-android游戏引擎-介绍