Cocos2d-x游戏移植到Android平台
1.所需环境支持:Android SDK、NDK、Eclipse、Cygwin。(本人所用系统WIN7-64位)
(1)Cygwin的下载安装:
Cygwin是Windows下的Linux模拟环境,用于运行Android所需的编译工具。
下载页面http://cygwin.com/install.html,本人下载的是(http://cygwin.com/setup-x86_64.exe)
运行下载后的setup.exe->选择下载源(install from internet)->选择安装目录->选择本地包目录(Cygwin下载的目录)->选择网络连接(use IE Proxy Settings)->选择下载站点(国内的应该会快一点)->选择需要安装的Cygwin组件(点开“Devel”分支,选择binutils,gcc-core,gcc-g++,mingw-gcc-core,mingw-gcc-g++,gdb,make)
安装成功后,运行Cygwin。分别输入gcc - v、g++ --version、make -v、gdb -v等命令并回车,如果显示版本信息,则说明安装成功。
(2)安装Android NDK:
对于Eclipse和Android SDK的安装,可以直接下载整合SDK的Eclipse(http://developer.android.com/sdk/index.html),不赘述。
在Android NDK的网站中( http://developer.android.com/tools/sdk/ndk/index.html)可以下载最新版本的NDK压缩包,下载并解压到合适的位置,以便后面使用。
ps:由于本人的cocos2d-x使用的是2.1版本,下载最新的android-ndk-r9-windows-x86_64,编译时居然出错了,所以低版本的亲,建议可以下载NDK的旧版本。
google提供的下载路径:http://dl.google.com/android/ndk/android-ndk-r8b-windows.zip(地址后面换上你想要的版本,比如说../android-ndk-r7c-windows.zip)
(3)编辑creat-android-project脚本,.bash_profile脚本:
特殊说明:请尽量不要用window里的记事本或者写字本打开修改,因为在window下和linux中回车符是不相同的。(sublime_text-一款不错的编辑器)
A.在cocos2d-x根目录下,找到“create-android-project.bat”脚本,设置相应路径后保存。
运行“create-android-project.bat”脚本:在Cygwin中进入cocos2d-x根目录,执行“./create-android-project.bat”,运行成功将看到“Please enter your package path. For example: org.cocos2dx.example:”,表示运行成功。
B.修改“.bash_profile”脚本,在Cygwin/home/用户名 目录下,找到“.bash_profile”文件,添加NDK的路径。如下图:
(4)创建简单的android项目:
运行“create-android-project.bat”脚本,运行后看到“Please enter your package path. For example: org.cocos2dx.example:”此时输入想要创建的程序包名,注意命名规范,比如说org.cocos2dx.helloAndroid。回车后,会提示输入项目文件夹名->选择android版本,最后在cocos2d-x文件夹下生成该Android项目。
(5)执行“build_native.sh”
执行“build_native.sh”来编译游戏,在Cygwin中进入该Android项目路径下,输入./build_native.sh执行脚本。如果一切顺利,就可以在项目bin目录中看到编译获得的libgame.so文件了。
(6)导入Eclipse中
打开Eclipse,依次打开“File”->“New”->“Project...”菜单项,在弹出窗口中选择“Android”->“Android Project from Exiting Code”项目,在弹出窗口中并选择刚才创建的Android项目中的“proj.android"目录,确认后Eclipse便能编译此项目。
(7)org.cocos2dx.lib包的创建
由于导入生成的项目里面没有org.cocos2dx.lib包,在Eclipse中该项目会标上红叉,所以需要我们手动在项目里面建一个该包。在该项目的src新建一个org.cocos2dx.lib的包,再找到cocos2dx的org目录:\cocos2d-2.1rc0-x-2.1.3\cocos2dx\platform\android\java\src\org\cocos2dx\lib,将所有java文件copy到新建的org.cocos2dx.lib的包中,项目ReFresh后可以看到问题已经解决了。
(8)启动调试,便能看到该项目在android移动设备上跑了~~good luck!
Cocos2d-x游戏移植到Android平台的更多相关文章
- Cocos2dx开发游戏移植到Android平台
第一步:安装配置安卓SDK,下载NDK并解压,下载cygwin并安装 第二步:导入platform文件夹下,android文件夹下java文件夹 在eclispe的windows--pereferen ...
- 将Unity3D游戏移植到Android平台上
将Unity3D游戏移植到Android平台是一件很容易的事情,只需要在File->Build Settings中选择Android平台,然后点击Switch Platform并Build出ap ...
- 基于Cocos2d-x-1.0.1的飞机大战游戏迁移到Cocos2d-x-3.0版本,并移植到Android平台成功运行
一.版本迁移中的问题 1.游戏元素Sprite.Label.Action等等的创建函数名都改为create. 2.函数的回调callfunc_selectorcallfuncN_selectorcal ...
- J2ME项目移植到Android平台六大注意事项
很多J2ME项目如何移植到Android平台呢?Java虽然号称是跨平台应用但是目前的移植问题还是比较严重的,不知道未来Sun推出JavaFx或F3时会出现什么问题,如何从J2ME移植到Android ...
- Windows下将ImageMagick移植到Android平台
Windows下将ImageMagick移植到Android平台 原文链接 http://www.pedant.cn/2014/06/18/imagemagick-ported-android/ I ...
- Unity3D之移植学习笔记:移植到Android平台更好的方法
接上文,之前我们采用了直接将Unity项目导出为Eclipse项目来修改的方式,这种做法存在的一个最大的问题就是:每当Unity被修改之后,都需要重新导出,而每次导出的项目在Android平台方面的J ...
- Unity3D之移植学习笔记:移植到Android平台
首先,我们需要一台已经配置好可以开发Android应用的计算机,这里我使用的是Windows系统+Eclipse+ADT的开发环境,当然也可以使用Android Studio或者使用Mac系统都可以. ...
- 将 FFmpeg 移植到 Android平台 (完整版)
首先需要去FFmpeg的官网http://www.ffmpeg.org/去下载FFmpeg的源码,目前的版本号为FFmpeg3.3(Hilbert). 下载的文件为压缩包,解压后得到ffmpeg-3. ...
- FFmpeg 学习(三):将 FFmpeg 移植到 Android平台
首先需要去FFmpeg的官网http://www.ffmpeg.org/去下载FFmpeg的源码,目前的版本号为FFmpeg3.3(Hilbert). 下载的文件为压缩包,解压后得到ffmpeg-3. ...
随机推荐
- OLAP vs OLTP: what makes the difference
OLAP vs OLTP: what makes the difference OLPT and OLAP are complementingtechnologies. You can't live ...
- P264练习题1.2题
package 集合; import java.util.*; public class fourteen { public static void main(String[] args) { //1 ...
- bzoj 2428: [HAOI2006]均分数据
#include<cstdio> #include<iostream> #include<cstdlib> #include<ctime> #inclu ...
- 3.精通前端系列技术之深入学习Jquery(一)
使用Jquery的好处: •简化JS的复杂操作 •不再需要关心兼容性(原生js获取元素样式.事件需要做兼容性) •提供大量实用方法 1.选择网页元素 <!DOCTYPE html PUBLIC ...
- Java并发编程(一) 两种实现多线程的方法(Thread,Runnable)
Java中实现多线程的方法有两种: 继承Thread类和实现Runnable方法,并重写Run方法,然后调用start()方法启动线程.使用Runnable会比Thread要好很多,主要是以下三个原因 ...
- C语言基础--while循环
while循环格式: while (条件表达式) { 语句; ... } 执行说明: while是对给定的条件进行判断, 如果条件满足, 就执行while后面大括号中的内容, 执行完毕之后会再次判 ...
- android 回调函数
http://blog.csdn.net/xiaanming/article/details/8703708 此为回调的java 实例 http://www.cnblogs.com/qingchen1 ...
- goldengate复制过程字符集处理一例
源端是oracle, al32utf8,表里有乱码,目标端是sybase cp936,两端的DB都不能改字符集,而且源端是目标端的超集,当复制有乱码的数据(非中文或英文数字等),目标端replicat ...
- linux中/etc/fstab文件删除或修改了,导致系统无法启动
在linux中,/etc/fstab文件是磁盘挂载的问题,若该文件不小心给修改了,或者被删除了,那么就会导致系统无法重启.因为/etc/fstab文件是记录磁盘挂载的信息,若该文件出现了问题,那么对应 ...
- HTML---6 运算符,类型转换
1.类型转换: 分为自动转换和强制转换,一般用强制转换. 其他类型转换为整数:parseint(): 其他类型转换为小数:parsefloat(): 判断是否是一个合法的数字类型:isNaN(): 是 ...