Cocos2dx项目移植Android平台

所需开发环境

  1. Microsoft Visual Studio
  2. eclipse
  3. cocos2dx游戏引擎
  4. android-ndk
  5. Python

(cocos2dx游戏源码只有Classes和Resources两个目录的情况下的配置步骤。)

cocos2dx使用:
解压下载好的cocos2dx目录即可。

android-ndk使用:
解压即可(版本最好是r9)

Python使用:

  1. 安装python-2.7.10.amd64.msi(我下载的版本)
  2. 安装完成后到 系统环境变量 中查看是否配置好了python环境变量
    如图:
    这里写图片描述

  3. 创建cocos2dx项目
    命令行进入到..\cocos2d-x-2.2.6\tools\project-creator目录下,通过命令
    create_project.py -project HelloCocos2dxGame -package com.cocos2dx.game -language cpp
    来创建android项目,create_project.py是cocos2d-x提供的创建项目的python脚本
    -project是工程名称
    -package是工程包名
    -language是开发语言
    3.之后projects目录下会生成以下文件目录结构:
    这里写图片描述

将下载的游戏源码目录下的相应文件拷贝到刚才通过Python新建的相应文件目录下即可(删除新建时生成的文件)

Microsoft Visual Studio使用:
VS编辑器编译源码(cocos2d-x-2.2.6\samples\Cpp目录下的源码可忽略此步骤)

  1. vs编辑器里导入刚才新建好的游戏目录
    这里写图片描述

  2. 选择游戏目录中的proj.win32中的xxx.vcxproj文件打开即可。此时
    这里写图片描述

这时的Classes目录中是没有游戏中的cpp和.h文件的,这需要我们手动添加进去,在Classes文件夹右键

这里写图片描述

  1. Build工程即可。
    (注:若Build不通过,很有可能是cocos2dx版本不同,导致cpp文件中导入的头文件的目录结构不同致使编译不通过,也有可能因为不同cocos2dx版本导致游戏中的一些方法不存在导致,这时需要一个个的修改这些文件的导入路径(具体路径因cocos2dx版本不同而异),以及修改一些找不到的方法,具体问题还请度娘。

Eclipse使用:

  1. 导入proj.android目录到eclipse中
  2. Classes目录下存放.cpp和.h文件,不能有win32的main.cpp文件,如果有,要删除
    这里写图片描述

  3. 修改proj.android\jni目录下的Android.mk,将Classes目录下的.cpp文件添加进来,按照格式添加
    这里写图片描述

  4. 更换res/drawable-hdpi目录下的icon文件来更换app图标,名字不能改变
    这里写图片描述

  5. 将Resources资源文件全部拷贝到assets目录下
    这里写图片描述

  6. 右键项目Properties
    这里写图片描述
    构建命令填上ndk-build.cmd的路径

  7. Environment,添加3个环境变量
    这里写图片描述

COCOS2DX cocos2dx根目录
NDK_ROOT ndk根目录
NDK_MODULE_PATH
配置好的:
这里写图片描述
注:配置时注意NDK_MODULE_PATH后面的路径斜线。

  1. 配置Resource下的Linked Resource(此步骤针对工程目录存放在cocos2dx引擎目录下的项目,其他路径下的项目应该可以不用此步骤,具体还没太搞明白…)
    这里写图片描述

  2. 导入游戏所需要的lib库:
    导入目录:..\cocos2d-x-2.2.6\cocos2dx\platform\android\java

  3. 游戏工程引入刚才导入的libcocos2dx库

  4. Project–>Build Project,开始编译cpp文件,第一次时间会有些长
    这里写图片描述
    这里写图片描述

  5. 移植成功,安装到手机即可运行。


这个是以前移植的时候遇到的问题,网上搜索的解决办法:

添加第三方so库:
2014-05-26
导语:Cocos2dx在安卓上移植的时候,加入第三方库,却发现新加的so库被删掉了。
正文:
1、我的环境: cocos2d-x 2.2.3, ndk-r9
2、网上找了很多,但是好多说法都没能成功,ndk编不过,最后找了个方法。这里记录一下!
1)在新建目录jni/prebuilt,添加so包
2)在原来的jni/Android.mk添加
3)注意,重新在armeabi目录下生成的大小会变化,但是如果大小差很多的话就有问题了,把obj目录删掉重编再试试就可以了

1.  LOCAL_PATH := $(call my-dir)  
2.    
3.  include $(CLEAR_VARS) 《---在这个后面田间  
4.    
5.    
6.  include $(CLEAR_VARS)  
7.  LOCAL_MODULE := mppay  
8.  LOCAL_SRC_FILES := prebuilt/libmppay.so  
9.  include $(PREBUILT_SHARED_LIBRARY)  
10.   
11. include $(CLEAR_VARS)  
12. LOCAL_MODULE := entryex  
13. LOCAL_SRC_FILES := prebuilt/libentryex.so  
14. include $(PREBUILT_SHARED_LIBRARY)  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值