您的位置:首页 > 移动开发 > Cocos引擎

android选择Windows 8 下配置Cocos2d-x + Android + Eclipse 的开发环境

2013-05-30 20:30 701 查看
这段时间一直在查找android选择之类的问题,今天正好有机会和大家讨论一下.

我的基础环境

不做胪陈,不清楚查阅[Android开发环境搭建]的文档便可

- Windows8

- Eclipse Helios 3.6.2

- JDK1.6

- Android SDK/ADT

一、安装 Cocos2d-x

- cocos2d-2.1rc0-x-2.1.2.zip

- 其他版本

- 下载实现后,解压缩



二、安装 CDT

- Eclipse的C/C++插件,如不需要在Eclipse中编写C/C++代码可先不必安装

- CDT-7.0.2 for Helios

- 其他版本

- 这里需要注意的是,不同版本的Eclipse要安装不同版本的CDT插件;

我的Eclipse版本是Helios,则对应cdt-master-7.0.2.zip。

- 下载实现后解压缩;当地插件安装方法,在Eclipse根目录下新建links文件夹,

在links文件夹里新建cdt.link,里面的内容填写为:path= 你的CDT目录,例如:

Java代码




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,末端添加如下行:

Java代码




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 末行添加(更改为你自己的路径)

Java代码




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下的路径的话斜杠默以为"\",需要改成“/” 。例如Windows下的路径为 NDK_MODULE_PATH:=D:/cocos2d-2.1rc0-x-2.1.3;D:/cocos2d-2.1rc0-x-2.1.3/cocos2dx/platform/third_party/android/prebuilt 。

以上两种方法任选其一;

需要注意的是:路径里不能含空格符,这里windows是以分号做分隔符,linux是以冒号做分隔符

Build Options面板下,Specify Resouces..选择当前项目标jni文件夹,其他配置如下图:



最后,OK,配置好后,Project->Clean,则会开始主动编译,控制台显示信息如下:



如果碰到AssetManager.a的错误,清空obj文件夹里的内容便可。

六、在Eclipse中开发Cocosd-x

将项目转换成C++项目以后,右键项目,选择Properties -> C/C++ General -> Paths and Symbols -> Includes,添加加入以下目录:

$NDK_ROOT/platforms/android-14/arch-arm/usr/include
$COCOS2D_ROOT/cocos2dx
$COCOS2D_ROOT/cocos2dx/include
$COCOS2D_ROO/CocosDenshion/include
$COCOS2D_ROOT/cocos2dx/platform/android


其中NDK_ROOT为NDK根目录,COCOS2D_ROOT为Cocos2d-x安装目录,请根据你自己的情况修改成对应的目录。

这样开发是就方便了很多,主动补全,高亮显示通通都有了。

如图 :



编译结果 :



文章结束给大家分享下程序员的一些笑话语录:

自从有了Photoshop,我再也不相信照片了!(没有Photoshop的年代,胶片照片年代做假的也不少,那时候都相信假的!)

---------------------------------
原创文章 By
android和选择
---------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: