琢磨着弄弄Cocos2d-x,配置下 Cocos2d-x + Android + Eclipse + Windows 8 的开发环境,过程比较心酸曲折,做个记录以备后用
我的基础环境
不做详述,不清楚查阅[Android开发环境搭建]的文档即可
- Windows8
- Eclipse Helios 3.6.2
- JDK1.6
- Android SDK/ADT
安装 Cocos2d-x
- 下载完成后,解压缩
安装 CDT
- Eclipse的C/C++插件,如不需要在Eclipse中编写C/C++代码可先不用安装
- 其他版本
- 这里需要注意的是,不同版本的Eclipse要安装不同版本的CDT插件;
我的Eclipse版本是Helios,则对应cdt-master-7.0.2.zip。
- 下载完成后解压缩;本地插件安装方法,在Eclipse根目录下新建links文件夹,
在links文件夹里新建cdt.link,里面的内容填写为:path= 你的CDT目录,例如:
path=F:\\eclipse-plugins\\cdt-master-7.0.2
再打开Eclipse,插件就已经装好了.
安装 NDK
- android-ndk-r8e-windows-x86.zip
- 其他版本
- 下载完成后,解压缩
- 配置NDK_ROOT环境变量(直接配置在WINDOWS环境变量中即可)
右键计算机->属性->高级系统设置->高级->环境变量->在系统变量中新建
变量名:NDK_ROOT
变量值:你的NDK目录(例如 F:\android\android-ndk-r8e)
然后找到名为Path的系统变量,在句首添加%NDK_ROOT%;别忘记分号
安装 Cgywin
- 由于NDK开发大都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要模拟Linux模拟编译环境
- 下载 setup.exe
- 运行setup程序,直接点击Next进入下一步。
- 选择安装方式,第一次可以采用Direct Connection在线下载安装,如有现成的离线包,可以选择离线安装(Install from Local Directory)。
- 选择安装目录
- 选择本地包存储目录(第三部所说,下次即可直接使用该本地包进行离线安装Cygwin)
- 设置网络连接方式以及选择镜像站点地址
- 选择安装项,在这里我们只选择当前需要的,点击列表中Devel,将后面的Default改为Install,下载
- 下载完成后会自动安装到上文设置的安装目录。运行cygwin,在弹出的命令行窗口输入:cygcheck -c cygwin命令,会打印出当前cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常
- 配置文件权限管理
Cygwin一样模拟了Linux的权限管理体系,这也没有什么不好的,但是跟Microsoft Windows的默认权限管理却有些不对付。常会出现权限问题,一个文件可以手动改,但如果是多个文件就比较麻烦了,我这里采用彻底的解决方法是,在安装好Cygwin以后,禁止Cygwin采用POSIX体系的权限管理。使用文本编辑器打开 Cygwin目录\etc\fstab,末尾添加如下行:
none / cygdrive binary,user,noacl,posix=0 0 0
创建 Android 项目
- 进入cocos2d-x目录,右键点击create-android-project.bat,编辑,更改批处理里的参数;
- 将_CYGBIN设置为cycgwin\bin安装的的绝对路径(例:F:\Cygwin\bin)
- 将_ANDROIDTOOLS设置为android sdk/tools绝对路径(例:F:\android\android-sdk-windows\tools)
- 将_NDKROOT设置为android ndk的绝对路径(例:F:\android\android-ndk-r8e)
- 修改完毕,保存后,双击create-android-project.bat开始工程创建向导
- 首先是输入包名(建议按照android的命名规则),如org.yourname.test
- 然后输入工程名称(注意不要输入已有的文件夹的名字,如果同名,会被覆盖掉的)如TestCocos2dx
- 选择target id,他会列出不同API方案用ID来标识,根据你的需要选择
- 创建完成(如果创建过程中遇到权限错误,请确认上述Cygwin文件权限管理是否配置过了)
- 查看cocos2d-x的目录下,则多了一个文件夹,文件夹名则为你刚刚输入的工程名称TestCocos2dx
进去看到三个文件夹:
Classes 存放默认工程的C++文件
proj.android android的eclipse工程项目
Resources 资源文件
- 编译刚创建的TestCocos2dx项目
打开cygwin,进入到 TestCocos2dx/proj.android下,输入 ./build_native.sh 开始编译,如下图
关于build_native.sh,进去查看即可知道,这是一个检查NDK_ROOT变量,拷贝资源文件,然后编译的一个脚本。
将项目导入Eclipse;File->Import->Android->Existing Android Code Into Workspace
Root Directory 选择刚刚创建的TestCocos2dx项目下的proj.android,如下图
导入后,出现一个错误:The import org.cocos2dx.lib cannot be resolved
那我们将设置一下cocos2d-x的引用即可
右键项目->build path->link source->Browse->选择地址
F:\android\cocos2d\cocos2d-2.1rc0-x-2.1.2\cocos2dx\platform\android\java\src
Folder name 填写为一个不与src冲突的名称,如cocos2dx-src 即可,然后finish
现在项目就可以正常跑起来了,连上真机,Run as Android Application
需要注意的是模拟器不支持opengl es2.0,所以用模拟器跑是有问题的。
运行结果如下图:
关于脱离Cygwin,配置Eclipse自动编译的补充
还是以上述项目来说;
在Eclipse里,右键项目->properties->builders->new->program->ok
main面板下->location->browse file system->选择你的NDK目录下的ndk-build.cmd
main面板下->working directory->browse workspace..->选择当前项目
refresh面板下的specific resource选择为当前目录下的jni文件夹,如下图
environment面板下->new...->如下所示
value处填写
cocos2d-x的根目录+分号+cocos2d-x的根目录/cocos2dx/platform/third_party/android/prebuilt
或者
在当前项目的jni文件夹下,编辑Application.mk 末行添加(更改为你自己的路径)
NDK_MODULE_PATH:=f:/android/cocos2d/cocos2d-2.1rc0-x-2.1.2;f:/android/cocos2d/cocos2d-2.1rc0-x-2.1.2/cocos2dx/platform/third_party/android/prebuilt
以上两种方法任选其一;
需要注意的是:路径里不能含空格符,这里windows是以分号做分隔符,linux是以冒号做分隔符
Build Options面板下,Specify Resouces..选择当前项目的jni文件夹,其他配置如下图:
最后,OK,配置好后,Project->Clean,则会开始自动编译,控制台显示信息如下:
如果遇到AssetManager.a的错误,清空obj文件夹里的内容即可。
相关推荐
Android Cocos2d-x 环境配置 1.开发环境 2.安装步骤 2.1.安装JDK 2.2.安装android sdk 2.3.安装NDK 2.4.项目转换 2.5.Eclipse导入生成的Hello World Android项目 2.6.Eclipse导入生成的TestCpp Android项目 2.7转换...
1. 请将文件放到cocos2d-1.0.1-x-0.13.0-beta目录下面 2. 打开build_android_ndk_tests.bat 文件 修改set NDK_ROOT=D:\Work7\android-ndk-r7c到你的NDK实际路径即可 3. jni/Application.mk 文件中加入 APP_MODULE : ...
『ANDROID』Cocos2dx环境安装:vs 和 eclipse
ubuntu系统下配置eclipse自动编译cocos2d-x的Android项目
cocos2d-x eclipse linux android cocos2d-x移植到android平台的详细步骤
cocos2d-android游戏引擎是著名游戏引擎cocos2d游戏引擎的Android版。cocos2d-android游戏引擎性能优越、易学、可以进行纯java编程、具有极高的研 究价值、大大的降低了开发者的学习成本。您只需要一台普通配置的...
环境搭建的顺序是这样 1.JDK&JRE 2.Eclipse 3.CDT 4.ADT 5.ADK 6.NDK
基于Cocos2d-x框架,并使用MVC架构的一个棋类游戏。 Pure MVC架构,构建可维护的Cocos2d-x游戏。 ###使用的框架 Cocos2d-x2.2.3 ###apk下载地址 应用宝 360手机助手 ###相关博客 架构篇:...
打地鼠 WhackAMole 源代码 已在Eclipse上能运行 cocos2d-x.2.2.3
资源为《cocos2d-x权威指南》一书中的《喵星战争》的eclipse android版源代码。代码基于cocos2d-x 2.0.4版本,原书基于2.0.1版本,运行在新版本上会有错误,我修改了代码并上传给大家用!
##在Eclipse中轻松运行cocos2d-x-3.0 新的!! 此模板中的大多数代码都具有向cocos2d-x起源的请求请求,并且已在v3.1之后合并。 但是您仍然可以通过更多功能使用它。 Cocos2d-x Official的Android项目模板不正确。...
项目说明:采用 cocos2d-X3.12 游戏引擎,基于 C++ 开发,支持 Android,iOS 以及 wp 系统 开发工具: 支持 Xcode,eclipse,visual studio 都可以,提前在机器上创建一个 cocos2d-x 的空工程,将 Class 文件删除,把下载好的...
基于引擎cocos2d-x 2.1.3开发的俄罗斯方块源码,内含VS2010下的Win32项目和Eclipse下的Android 4.0.3项目
这是一个使用Cocos2d-x-3.X 开发的飞机大战游戏,实际版本为Cocos2d-x3.3 开发博客: Cocos引擎中文官网同步更新: Demo演示: 开发环境 Dev Environment Linux OS (Ubuntu 14.04 LTS) Eclipse 4.4.1 Cocos2d-x-3.3 ...
java版飞机大战源码 Cocos2d-x 阶段总结 一、背景 主要用来记录最近对于Cocos2d-x的了解情况,由于接下来会...再次看过之后,我认为对于编译Android项目,Cocos2d-x提供了两种方式,一种是Python脚本,一种是Cygwin+
cocos2d-x版本:3.2 ##1. 单元测试 所有的模块的单元测试在test文件夹下。 ios,mac用户打开test/proj.ios_mac/test.xcodeproj, 修改部分引用路径,直接编译运行即可。 android用户可以将test/proj.andorid项目导入到...
基于Cocos2d-x框架,并使用MVC架构的一个棋类游戏。 Pure MVC架构,构建可维护的Cocos2d-x游戏。 ###使用的框架 Cocos2d-x2.2.3 ###apk下载地址 ###相关博客 架构篇: ###项目导入 将该项目放在Cocos2d-x根目录下的...
在eclipse中导入项目,并添加cocos2d-x库参考项目。 (如果您是CCLayerPanZoomc类的作者,请与我联系,我会将其添加到学分中) 执照 BSD样式,具有完整许可证,可通过License.txt中的框架获得。
Eclipse: eclipse_4.3_x64 NDK:android-ndk-r9c-windows-x86_64 CDT: cdt-master-8.2.1 ...cocos2d :cocos2d-x-2.2.1 由于个版本更新很快,大家使用新版本配置的时候可能发生问题,写下自己的一点心得希望能帮到大家