cocos2dx 3.10 移植到安卓步骤

0,这里废话:

本人非计算机专业,刚开始自学编程时,由于对游戏的兴趣学完c++基础就去学cocos2dx了,用的是2.2.6版本,那时移植到安卓时搞了一天的时间才搞好,可能我比较笨吧,一开始因为没搞过JAVA,对于配置环境变量感觉很麻烦,后来搞好JAVA配置环境又要去eclipse配置那些什么ndk呀,sdk呀,什么乱七八糟的,最坑的就是网上教程路径使用\来分隔的,我用的时候不知道为什么\不行,这个错误搞了好久,后来用/就可以了,看似简单的一些东西,但对于新手来说真的是太折腾了。由于后来找不到编程工作,要及时解决眼前钱的问题,就没去搞过了。事隔一年,找到了游戏开发工作,又重新捡起cocos2dx,发现现在版本更新好快呀,3.10了,原先以为移植应该一样的,就按以前2.x的版本来做,发现引擎的文件夹不同了。果然还是用3.10的方法移植吧, 好,不废话了,下面进入正题

1,下载

感觉3.10相对于2.x移植简单了好多,先简单介绍下需要用到的各种包

Android JDK:Java Development Kit 从名字就知道了java的开发工具包

Android NDK:Native Development Kit 即原生开发包,Android是基于Linux的,Linux用什么开发的?没错,C语言,所以这个包就是用于C/C++与JAVA语言交互的

Android SDK:Software Development Kit 即软件开发包,每个平台都有对应的SDK,包含了一些这个平台所需的文件

Android ANT:这个是Android的编译工具

引擎:cocos2dx,这个不用说了

脚本:python,编译时需要使用

另外我使用的版本是:

JDK:jdk-8u91-64位

NDK:r10d

ANT:1.9.7

引擎:cocos2dx 3.10

脚本:python 2.7.5,这个要注意版本哈,我之前下载的是2.7版本,被坑死了,一直编译不过

以上介绍到的可以自行搜索下载,也可以使用下面我提供的网盘下载

链接:http://pan.baidu.com/s/1eShS2KM 密码:64d0

下载好后cocos2dx,python,JDK这三个需要安装,都是双击,下一步的事,就不说了,然后另外三个随便解压到自己喜欢的文件夹,

这里我自己在E盘创建了个Android文件夹,并把三个包的文件夹改名为ndk,sdk,ant,文件夹自己随便改,不改也行,各人喜欢,如下图

2,配置

下载好上面的各个包后,就开始配置了,相信新手都是非常害怕这个的,至少我刚学的时候是,

我们打开cocos2dx 3.10引擎根目录,我电脑上的路径是C:\Cocos\Cocos2d-x\cocos2d-x-3.10

打开setup.py,这里建议新手先打开CMD,然后在CMD里面打开setup.py,不然配置好就会自动退出,你就看不到了。

另外介绍一下很多新手不知道的CMD打开技巧,相信大部分人都是Ctrl + R打开CMD,然后再CD到此目录,这样会很麻烦,

我们可以直接在你需要打开的文件夹下,对着空白处按住Shift + 右键就会出现下图,选择在此处打开命令窗口

也可以直接右键你要打开的文件夹,同样有在此处打开命令窗口选项

好,继续打开setup.py,如下图

提示我们输入NDK根目录的路径,我的是e:/Android/ndk,另外关于路径\和/,\是windows使用的,/是linux和windows都识别的,以前被\坑过,所有我都用/了,不要在意这些

之后是SDK根目录的路径

然后ANT,值得注意的是ANT的路径,并不是ANT的根目录,而是里面的bin目录

三个都配置完后,这时我们可以到环境变量中查看,对着计算机右键属性->高级系统设置就会弹出下面窗口,选择到高级选项卡

再查看环境变量,就可以在上面的框框内找到我们刚刚配置的三个环境变量

当然也可以直接在这里新建进行配置,不需要使用setup.py来配置

另外如果前面路径输错了,也可以在这里修改,或者删除然后再打开setup.py配置,也可以打开setup.py -h查看相应的参数进行修改

到此就配置完了,大家会发现这里没有配置JAVA环境变量,为什么呢?这里简单的讲一下JAVA环境变量,相信大家网上搜索都会讲到三个变量:

JAVA_HOME:这个是个中间变量来的,用于方便配置其它变量,把一个地址写到这个变量,在其它变量配置时使用此地址就可以使用这个变量代替,方便简写,所以不配置了

CLASSPATH:这个目的在于告诉Java执行环境,在哪些目录下可以找到所要执行的java程序所需要的类或者包什么的,JDK默认会在当前目录下查找,所有不配置了

系统变量Path路径:这个嘛,主要为了在CMD使用时方便,不需要加路径就可以直接使用java的工具,我们移植安卓又不是要写JAVA程序,不需要,所以不配置了

3,打包apk

我们来到项目文件夹下,进入到proj.android/jni文件夹里,打开Android.mk

在这里把自己项目中所有的cpp文件路径加进来,注意后面的\是换行符,不要漏掉了,

只需要写cpp,不需要.h,它会自动根据cpp所在路径导入.h文件的,即使你一个类只有.h没有cpp,但与其它cpp放在一个路径下,在项目中使用了,它也会自动导入

然后设置图标和名字,就是你在安卓桌面上看到的那个图标和名字,返回上一级目录proj.android进入res文件夹

这里前面3个drawable分别存放不同分辨率下的图标,l是Low低分辨率,m是Middle中分辨率,h就是High,高分辨率,系统会自动匹配机器分辨率到这几个文件夹获取图标

另外一个values文件夹,里面的strings.xml这个是设置名字的

好了,开始编译了,返回上一级目录,即proj.android目录下,右键空白处,在此处打开命令窗口,然后运行build_native.py

你也可以直接双击运行此文件,但运行完它会自动退出,那就看不到结果了,所以还是打开CMD来运行好

回车后它就会自动编译,因为没有指定Android目标平台版本,所以会自动去查找可用版本,

如果需要指定版本,可以返回上级目录使用命令cocos compile 编译

这个命令用来打包不同平台的运行文件,比如android的 cocos compile -p android  --ap 版本号,参数-p后面指定平台,--ap是android平台下的指定版本命令

其它各个参数可以-h查看帮助

安卓对应的版本需要对应的文件,所以需要去安装对应的版本文件,需要使用eclipse安装ADT插件来安装这些版本的文件,已安装的版本可以在sdk里面的platforms目录查看

之后就是漫长的编译过程了,

如果你写的.cpp文件没有错误的话,然后你就会看到正在生成apk文件

是不是很兴奋?不过到这里我的就报错了,

这里它需要一个包,因为我们上面没有配置环境变量,所以它找不到,在这里我们打开JDK的lib目录,我的是C:\Program Files\Java\jdk1.8.0_91\lib,找到里面的一个tools.jar文件,复制到jre目录下的lib文件夹下,jre与jdk是同级目录,安装JDK时会安装jdk和jre,我的目录是C:\Program Files\Java\jre1.8.0_91\lib,这下它能找到这个包了

好啦,重新执行build_native.py或cocos compile编译,编译完成后如下图

这个时候在项目的根目录中就多了一个bin文件夹,在里面就有一个apk包,就是安卓的安装包了。

在这里建议新手先使用引擎的HelloWorld项目尝试打包先,这样确保至少打包上的配置是没有问题的,

不要一上来就用自己写的项目进行打包,不然你会发现一大把一大把的错误,导致你信心大减,至少我就是一上来就用自己的项目打包,然后...

到此,以上步骤仅仅是本人自己编译时所涉及到的步骤及问题,我在公司和家里的电脑移植时都是这样的问题,但有可能在你电脑上出现的问题就不是这些了!

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值