由于cocos2d-x 2.1.1版本的build规则与之前有较大差别,所以在iOS项目跟android项目代码整合方面花了一些时间。
特别声明:本文创建的是cocos2dx project,非特殊项目,例如Box2D project。如果你需要的是Box2D project,自行参考处理。
参考了以下文章
http://gameit.ro/2012/01/creating-an-iphone-and-android-cocos2d-x-hybrid-project-updated/
http://www.himigame.com/cocos2dx-v2-0/962.html
先将整合步骤整理如下:
1、分别创建iOS project 和android project。(略)
2、将android project目录下的 proj.android 拷贝到 iOS project下,并重命名为android。操作完成后,新的目录如
3、将 cocos2dx/platform 下的 h和cpp 文件拷贝到 {PROJECT_LOC}/libs/ cocos2dx/platform,无需递归子文件夹
4、将 cocos2dx/platform/andriod 拷贝到 {PROJECT_LOC}/libs/ cocos2dx/platform
5、将 cocos2dx/platform/third_party/andriod 拷贝到 {PROJECT_LOC}/libs/ cocos2dx/platform/third_party
6、将 cocos2dx/support/user_default 下的 CCUserDefaultAndroid.cpp、CCUserDefault.cpp 拷贝到 {PROJECT_LOC}/libs/ cocos2dx/support/user_default
7、将 CocosDenshion/andriod 拷贝到 {PROJECT_LOC}/libs/CocosDenshion/andriod
8、将 extensions/GUI/CCEditBox 拷贝到 {PROJECT_LOC}/libs/extensions/GUI/CCEditBox
9、将 cocos2dx/Android.mk 拷贝到 {PROJECT_LOC}/libs/ cocos2dx,无需修改。
10、将 extensions/Android.mk 拷贝到 {PROJECT_LOC}/libs/extensions,由于非Box2D项目,在这里我删除了一下内容
$(call import-module,external/Box2D)
$(call import-module,external/chipmunk)
11、修改 {PROJECT_LOC}/android/build_native.sh
COCOS2DX_ROOT="../libs"
APP_ROOT="../"
APP_ANDROID_ROOT="$APP_ROOT/android"
12、在 {PROJECT_LOC}/android 目录下添加 makefile
1) vi makefile
2) 输入以下内容
3) 保存,退出。
4) 在当前目录执行命令 make clean 如果看到以下结果,则表示命令正常
13、确认NDK_ROOT 是否已经配置
14、在 {PROJECT_LOC}/android 目录下执行命令 ./build_native.sh
看到 Install : libgame.so => libs/armeabi/libgame.so
就表示你成功了。
剩下的就是将android项目添加到eclipse中,这方面的资料很多。请自行搜索。
相关推荐
《cocos2d-x 2.1.1 API 深度解析》 cocos2d-x是一款跨平台的游戏开发框架,它基于C++,同时提供了JavaScript和Lua的绑定,让开发者可以方便地在多种设备上创建2D游戏、应用或者交互式内容。2.1.1版本作为cocos2d-x...
Cocos2d-x 是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多平台的游戏开发。3.x版本是其发展中的一个重要阶段,引入了多项优化和新特性,旨在提高开发效率和性能。 本书首先会介绍...
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
Cocos2d-x 是一个跨平台的游戏引擎,可以在多种平台上运行,包括 Windows、Mac OS X、iOS、Android 等。 一、下载和安装 Cocos2d-x 首先,需要下载最新版本的 Cocos2d-x。打开浏览器,输入 cocos2d-x.org,然后...
Cocos2d-x是一个开源的、跨平台的游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程语言,提供了丰富的实践案例和源代码,帮助读者深入理解和掌握Cocos2d-x的使用。 在Cocos...
《Cocos2d-x 3.13.1与Spine 3.6集成详解》 Cocos2d-x是一个广泛使用的开源游戏开发框架,它基于C++,同时支持Lua和JavaScript等多种脚本语言,为开发者提供了高效、跨平台的游戏开发解决方案。在3.13.1版本中,...
cocos2d-x 是一个开源的游戏开发框架,使用 C++ 语言编写,支持多平台发布,包括 iOS、Android、Windows、macOS、Linux 和 Web。cocos2d-x v3.16 是该框架的一个版本号,本文档主要介绍了该版本的安装流程以及环境...
1. **跨平台支持**:支持iOS、Android、Windows、Mac OS X、Linux等多个操作系统,使用同一套源码即可构建多平台应用。 2. **C++核心**:3.8版本的cocos2d-x使用C++作为主要开发语言,保证了性能和灵活性,同时也...
cocos2d-x 2.1.1 的英文api文档,做成chm格式,方便索引和查找
1. **跨平台支持**:Cocos2d-x 3.1支持多种操作系统和设备,包括iOS、Android、Windows、Mac、Linux等,使得开发者可以编写一次代码,到处运行。 2. **C++基础**:Cocos2d-x主要采用C++作为编程语言,同时也支持Lua...
Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程工具,详细介绍了如何利用Cocos2d-x进行游戏开发。 首先,Cocos2d-x的基础知识是必须...
这个压缩包“cocos2d-x-cocos2d-x-2.2.2.zip”包含了cocos2d-x 的2.2.2版本,该版本是cocos2d-x发展中的一个重要里程碑,它提供了许多改进和优化,使得开发者能够更加高效地创建2D游戏和应用。 在cocos2d-x 2.2.2中...
在Android平台上进行游戏开发时,Cocos2d-x是一个广泛使用的开源2D游戏引擎,它支持多平台,包括iOS、Android、Windows等。本篇将详细介绍如何在Windows XP SP3环境下配置Android Cocos2d-x的开发环境。 首先,我们...
cocos2d-x 是一个广泛使用的开源游戏开发框架,尤其在移动平台如Android和iOS上备受青睐。2.1.1版本是cocos2d-x的一个重要里程碑,它提供了丰富的功能和优化,使得开发者能够更高效地构建2D游戏和应用。本文将深入...
《Cocos2d-x实战 JS卷 Cocos2d-JS开发》是一本深入探讨Cocos2d-x游戏引擎JavaScript版本使用的专业书籍。Cocos2d-x是全球范围内广泛采用的游戏开发框架,尤其适用于2D游戏的制作,而Cocos2d-JS则是其JavaScript接口...
《cocos2d-x 动画工具 Flash2Cocos2d-x 1.3:将Flash创意带入移动游戏开发》 在移动游戏开发领域,cocos2d-x是一款广泛使用的开源游戏引擎,以其高效、跨平台的特性深受开发者喜爱。而Flash2Cocos2d-x则是一个专为...
cocos2d-x 3.0是cocos2d-x系列的一个重要升级,它基于C++编写,支持跨平台开发,包括iOS、Android、Windows等多个操作系统。该版本引入了新的渲染系统、性能提升、新的动画系统以及更友好的API,极大地提高了开发...
1. Cocos2d-x:是一个开源的游戏开发框架,它主要用于开发跨平台的游戏和应用程序,支持iOS、Android、Windows、Mac等多个平台。它允许开发者使用一套代码,就可以在不同的操作系统上部署应用程序。 2. 实战++JS卷...
cocos2d-x是一个基于MIT许可证的开源游戏引擎,它以快速、简单且功能强大的特性闻名,允许开发者使用C++、Lua和JavaScript进行跨平台开发,支持包括iOS、Android、Windows Phone、Blackberry以及Tizen在内的多个平台...
《cocos2d-x改写《魔塔》案例 2.1.1 中期》是一个基于cocos2d-x 2.1.1版本的手机游戏开发项目,它旨在通过重制经典游戏《魔塔》来教授和展示cocos2d-x引擎的使用技巧。在这一中期阶段的代码中,开发者已经完成了游戏...