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. ...
随机推荐
- js继承实例
第一种方法:对象冒充(临时属性) 借用临时属性,指向超类,末了删除 function Person(name,gender){ this.name=name; this.gender=gender; ...
- JSP中的EL
1.为什么要使用EL 使用<jsp:getProperty>,只能访问bean属性的性质,不能访问嵌套性质.例如一个含有Dog对象的Person对象. 当然使用脚本可以工作,但是如果不想使 ...
- [vijos P1595] 学校网络
有生以来做的第二道IOI题目居然也是96'的,又是一道比我还老的题目. 纯属复习或者说再学一遍Tarjan算法,本题的主要算法就是Tarjan+缩点,对于两个子问题的答案,根据解题:强连通缩点为拓扑图 ...
- java基础-001
一.区分final . finally . finalize 1.关键字final Java语言的关键字final可以用于变量.类或方法,但是含义会有所不同. -用于变量:一旦初始化,变量值就不能修 ...
- hello iic
刚刚终于弄出来了这个.发现自己很多问题. 一 mian函数 #include "led.h"#include "delay.h"#include "s ...
- vc设置窗口透明
::SetWindowLong(GetSafeHwnd(), GWL_EXSTYLE, ::GetWindowLongPtr(GetSafeHwnd(), GWL_EXSTYLE) | WS_EX_L ...
- 北大poj-1001
Description Problems involving the computation of exact values of very large magnitude and precision ...
- Design Patterns
经典的<设计模式>一书归纳出23种设计模式,本文按<易学设计模式>一书归纳分类如下:1.创建型模式 前面讲过,社会化的分工越来越细,自然在软件设计方面也是如此,因此对象的创建和 ...
- selectors实现高并发
1. 下面的例子,客户端给服务端发送消息,服务端把消息返回 server #!/usr/bin/env python import selectors import socket import tim ...
- BZOJ 3036 绿豆蛙的归宿
期望dp.类似记忆化搜索的方法实现. #include<iostream> #include<cstdio> #include<cstring> #include& ...