zoukankan      html  css  js  c++  java
  • 将Cocos2d-x游戏打包成Android应用程序

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

    2. 导入后java的源码会出现编译错误,打开cocos2d-x引擎的根文件夹cocos2dxplatformandroidjavasrc,将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的安装文件夹 dk-build.cmd(该文件夹不能有空格)



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


    三个变量的Name和Value各自是

    COCOS2DX cocos2d-x引擎的根文件夹

    NDK_MODULE_PATH cocos2d-x引擎的根文件夹;cocos2d-x引擎的根文件夹cocos2dxplatform hird_partyandroidprebuilt

    NDK_ROOT ndk的安装文件夹



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

    5. 编写jniAndroid.mk文件



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



    假设项目文件一多的话势必编写起来麻烦,并且须要更改时也非常easy编写错误,在下一篇文章中,用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. 编译项目,假设看到控制台输出



    说明编译成功。


  • 相关阅读:
    acceptorThreadCount
    spring boot tomcat 线程数 修改初始线程数 统计性能 每百次请求耗时
    java 获取当前进程id 线程id
    Linux操作系统中打开文件数量的查看方法
    java.io.IOException: Too many open files
    随机采样 算法
    Spring Boot
    您好,python的请求es的http库是urllib3, 一个请求到贵司的es节点,想了解下,中间有哪些网关啊?冒昧推测,贵司的部分公共网关与python-urllib3的对接存在异常?
    运行状态:锁定中(实例空间满自动锁)
    。。。。。。不带http https : 不报错 spring boot elasticsearch rest
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4009676.html
Copyright © 2011-2022 走看看