cocos2dx 3.1.1移植安卓apk (lua项目交叉编译 mac环境下)
cocos2dx 3.1.1 lua项目安卓交叉编译 mac环境下 本文基于ant,sdk,ndk,adt等软件和环境已经事前设置好
1\新建项目 在mac的终端下输入命令: cocos new tegame -p com.test.app -l lua (后面可以加自定义的路径)
环境搭建好后可以直接输入以上语句新建项目.
这个新建的lua项目,就是我们用于编译到安卓的cocos项目. 新建的文档,引擎本身已经写好mk文件,不需要修改和编辑,相对来说比较简单.适用于新手学习. 先用xcode编译运行,看到农场画面正常后执行下一步. 2\编译so文件 先用终端cd进入刚刚新建的项目目录,然后再运行命令 cocos compile -p android
3\用eclipse打包apk (1)把项目导入到eclipse中 选File->New->project,如下图,点击Android->Android Project from Existing Code,选择项目路径,然后按确认next。
(2)将项目导入到eclipse中后会出现报错 Cocos2dxActivity cannot be resolved to a type. The import org.cocos2dx.lib cannot be resolved 这个问题,是提示找不到下列文件: import org.cocos2dx.lib.Cocos2dxActivity; 解决方案:只需要将cocos2d-x引擎的根目录的cocos/platform/android/java/src/org/cocos2dx文件夹下的lib文件夹全部复制到项目的proj.android/src/org/cocos2dx文件夹下。
然后在项目上右键选择Refresh
(3)新报错:
The method getAudioSessionId() of type Cocos2dxVideoView must override or implement a super type method
报错指向的内容:
@Override
public int getAudioSessionId() {
// TODO Auto-generated method stub
return mMediaPlayer.getAudioSessionId();
}
解决方法:
删除@Override这行再重新编译即可
_________
编译后生成的apk,真机运行,是黑屏,什么都没有.
这是因为我们的资源还没放到assets的路径中,所以黑屏啥都看不见.
于是做最后一步操作,把资源放到安卓的assets文件夹中.
(4)把项目根目录下的res和src两个文件夹,复制到生成so文件时生成的文件夹中,路径是项目下的/frameworks/runtime-src/proj.android/assets
同时,项目根目录下面的路径/frameworks/cocos2d-x/cocos/scripting/lua-bindings/script里面的全部lua文件也要复制到assets目录中
然后在项目上右键选择Refresh
右键工程名字,【run as】 -->【Android Application】
生成的apk就正常可以用了!
参考资料 http://blog.csdn.net/wtuetnsrmh/article/details/28723895 http://blog.csdn.net/nanlus/article/details/36380855 http://blog.csdn.net/dyllove98/article/details/8829919
cocos2dx 3.1.1移植安卓apk (lua项目交叉编译 mac环境下)的更多相关文章
- cocos2dx 3.1.1移植安卓apk (lua交叉编译器项目 mac环境)
cocos2dx 3.1.1 lua项目安卓交叉编译 mac环境 本文基于ant,sdk,ndk,adt等软件和环境已经事前设置好 1\新建项目 在mac的终端下输入命令: cocos new t ...
- Cocos2d-x Lua游戏开发Mac环境搭建以及一点点感悟
接触Cocos2d-x 最近由于公司项目的需要,自己开始接触Cocos,开始做一些简单的轻量级的游戏,以前没有接触过这一块的东西,也是借助这个机会学习一下游戏的开发,由于以前自己接触的全都是iOS和A ...
- Cocos 2d-X Lua游戏开发Mac环境搭建以及一点点感悟
接触Cocos2d-x 最近由于公司项目的需要,自己开始接触Cocos,开始做一些简单的轻量级的游戏,以前没有接触过这一块的东西,也是借助这个机会学习一下游戏的开发,由于以前自己接触的全都是iOS和A ...
- Cocos2dx 把 glview 渲染到 Qt 控件上(Mac 环境)
本文原链接:http://www.cnblogs.com/zouzf/p/4423256.html 环境:Mac 10.9.2 Xcode5.1.1 Qt5.3 cocos2dx-2.2.4 ...
- APK反编译(Linux环境下)
先下载dex2jar和jd-gui这两个软件,然后解压APK,把解压出来的classes.dex,放到dex2jar的根目录,然后命令行进入到dex2jar根目录,然后执行命令 ./dex2jar ...
- Mac环境下反编译apk
0,工具汇总 我们反编译apk主要使用下面三个工具 apktool:用于获取资源文件 dex2jar:获取源文件jar包 JD-GUI:反编译源文件jar包查看源码 找这些工具时折腾了我点时间.如今把 ...
- 3、Cocos2dx 3.0游戏开发找小三之搭建开发环境
尊重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27107295 搭建开发环境 使用 Cocos2d- ...
- OS X环境下如何搭建编译Cocos2D-X v3.x的Android Studio工程
Cocos2D-X官网已经简单介绍了如何在OS X环境下搭建Cocos2D-X v2.x和v3.x的指南.具体链接为:http://www.cocos.com/doc/article/index?ty ...
- Cocos2d-x移植安卓的笔记
一.下载所需软件 Java SDK http://www.oracle.com/technetwork/java/javase/downloads/index.html Windows x64 ...
随机推荐
- yaml 文件保存
with open(mpath, "w") as f: yaml.safe_dump(yaml_dict,f,encoding='utf-8', allow_unicode=Tru ...
- string_01
内存释放和越界 越界:(1).复制越界,(2).取值越界 构造函数 (1).默认 空(无参) (2).拷贝(const string &) (3).带参数: const char * // Z ...
- [链接]最短路径的几种算法[迪杰斯特拉算法][Floyd算法]
最短路径—Dijkstra算法和Floyd算法 http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html Dijkstra算 ...
- Linux常用命令 查找文件
Linux搜索命令:find / -name 'nginx' 搜索根目录下文件名为‘nginx’的文件夹 .find / -name 'nginx.conf' 搜索根目录下文件名为‘nginx.co ...
- 2018年全国多校算法寒假训练营练习比赛(第一场)G 圆圈
https://www.nowcoder.com/acm/contest/67/G 思路: 分形. 记录中间左边点的坐标,然后推出另外3个点的坐标,递归到最简单的情况. 代码: #include< ...
- Python -- xlrd,xlwt,xlutils 读写同一个Excel
最近开始学习python,想做做简单的自动化测试,需要读写excel,然后就找到了xlrd来读取Excel文件,使用xlwt来生成Excel文件(可以控制Excel中单元格的格式),需要注意的是,用x ...
- 雷林鹏分享:C# 接口(Interface)
C# 接口(Interface) 接口定义了所有类继承接口时应遵循的语法合同.接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分. 接 ...
- php--------使用js生成二维码
php生成二维码有多种方式,可以在JS中,也可以使用php库,今天写的这个小案例是使用JS生成二维码. 其他方式可以看下一篇文章:php--------php库生成二维码和有logo的二维码 网站开发 ...
- OC 内存管理之自动内存管理ARC
一.基本简介 ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain.release.autorelease语句.你不再需要担心内存管理,因 ...
- JavaScript学习总结(七)——JavaScript函数(function)
一.函数基本概念 为完成某一功能的程序指令(语句)的集合,称为函数. 二.JavaScript函数的分类 1.自定义函数(我们自己编写的函数),如:function funName(){} 2.系统函 ...