Cocos移植到Android-使用Eclipse交叉编译打包

简介: <span style="font-size:14px;">如果对命令行望而生畏,我们可以借助于安装有ADT插件的Eclipse工具实现交叉编译。<br>使用Eclipse进行交叉编译,首先需要将要编译的工程导入到Eclipse的Workspace中,Workspace是多个工程的集合。具体步骤是启动Eclipse后,选择菜单File→New→Project,弹出如图21-18所示的新建工程对
如果对命令行望而生畏,我们可以借助于安装有ADT插件的Eclipse工具实现交叉编译。
使用Eclipse进行交叉编译,首先需要将要编译的工程导入到Eclipse的Workspace中,Workspace是多个工程的集合。具体步骤是启动Eclipse后,选择菜单File→New→Project,弹出如图21-18所示的新建工程对话框,选择Android→Android Project from Existing Code。

 新建工程对话框
在新建工程对话框中点击Next按钮,弹出如下图所示的导入工程对话框,点击Browse按钮,弹出后面所示的选择目录对话框,注意选择目录是:“<游戏工程路径>\proj.android”,在这个目录下有创建Eclipse的Android工程所需要的文件。



导入工程对话框

选择目录对话框
选择好目录后,点击确定按钮关闭对话框,回到导入工程对话框,如下图所示,在Root Directory已经有内容了。如果没有报错说明选择工程成功了。注意我们不要选中Copy projects into workspace选项。选择完成后点击Finish按钮。





选择工程成功
然而点击Finish后,Eclipse导入并编译工程,编译完成时候会发现有很多错误,如下图所示。经过研究不难发现引起这些错误的原因是,找不到Cocos2d-x在Android平台的Java类,这些类位于:<游戏工程路径>\cocos2d\cocos\2d\platform\android\java目录下,我们要么把这个目录下的Java文件拷贝到当前工程的src目录,要么导入Cocos2d-x Android Java类库工程。

编译错误
导入Cocos2d-x Android Java类库工程的操作步骤与前面导入游戏工程是类似的,选择的路径是:<游戏工程路径>\cocos2d\cocos\2d\platform\android\java。如下图所示是成功导入的libcocos2dx工程。

成功导入libcocos2dx工程
提示 很多读者会问,只是导入libcocos2dx工程,游戏工程MyGame就可以找到需要的Java类文件吗!这是因为在MyGame工程中有一个project.properties文件,在这个文件中的android.library.reference.1=../cocos2d/cocos/2d/platform/android/java设置项描述了两个工程之间的依赖关系。
两个工程在Eclipse里编译成功,并不代表这游戏工程已经进行了交叉编译,我们需要执行<游戏工程路径>\proj.android\build_native.py进行交叉编译生成.so文件。执行build_native.py可以通过DOS终端进入所在目录build_native.py执行,可以在Eclipse里双击build_native.py执行,执行过程如下图所示。

执行build_native.py交叉编译
如果执行build_native.py交叉编译成功后,我们还需要在Eclipse中选择MyGame工程,按F5键刷新工程,否则在工程中看不到如下图所示libcocos2dcpp.so文件。

libcocos2dcpp.so文件

交叉编译成功就可以打包运行了,选择MyGame工程,右键菜单Run as → Android Application,然后选择要打包和运行的模拟器或Android设备就可以了。



更多内容请关注最新Cocos图书《Cocos2d-x实战 C++卷》
本书交流讨论网站: http://www.cocoagame.net
更多精彩视频课程请关注智捷课堂Cocos课程: http://v.51work6.com
欢迎加入Cocos2d-x技术讨论群:257760386


《Cocos2d-x实战 C++卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11584534.html

亚马逊:http://www.amazon.cn/Cocos2d-x%E5%AE%9E%E6%88%98-C-%E5%8D%B7-%E5%85%B3%E4%B8%9C%E5%8D%87/dp/B00PTYWTLU

当当:http://product.dangdang.com/23606265.html

互动出版网:http://product.china-pub.com/3770734

《Cocos2d-x实战 C++卷》源码及样章下载地址:

源码下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1155&extra=page%3D1 

样章下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1157&extra=page%3D1

欢迎关注智捷iOS课堂微信公共平台
目录
打赏
0
0
0
0
26
分享
相关文章
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
100 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
62 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
4月前
|
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
165 11
05. 【Android教程】Android 程序签名打包
05. 【Android教程】Android 程序签名打包
103 1
【Android P】OTA升级包定制,移除不需要更新的分区,重新打包签名
如何解压OTA升级包、编辑升级包内容(例如移除不需要更新的分区)、重新打包、签名以及验证OTA文件的过程。
616 2
【Android P】OTA升级包定制,移除不需要更新的分区,重新打包签名
|
9月前
|
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
271 0
详细解读Android开发DNK开发将.c文件打包成os
详细解读Android开发DNK开发将.c文件打包成os
59 0
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
Android使用Jenkins打包自动维护sdk版本号
Android使用Jenkins打包自动维护sdk版本号
86 0
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
484 0

热门文章

最新文章

推荐镜像

更多