1、Android环境搭配:
  • 下载jdk
  • 下载Android ADT
  • 下载安装Android SDK,地址:http://developer.android.com/sdk/index.html#download
  • 创建AVD
2、下载Android NDK: http://developer.android.com/tools/sdk/ndk/index.html#download NDK是一系列工具的集合。NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。
3、安装cygwin:
因为NDK编译代码时必要用到make和gcc,所以你必须先搭建一个linux景象, cygwin是一个在windows平台上运行的unix模仿景象,它对于进修unix/linux操纵景象,或者从unix到windows的应用法度移植,很是有效。经由它,你就可以在不安装linux的景象下应用NDK来编译C、C++代码了
安装详解:
你得先跑到 http://www.cygwin.com下载setup.exe
第一步:运行setup程序,第一步图略,直接点击Next进入下一步。


第二步:选择安装方式,第一次可以采用Direct Connection在线下载安装,如有现成的离线包,可以选择离线安装(Install from Local Directory)。
第三步:选择安装目录,比如C:\Cygwin,注意此目录是指Cygwin最终的安装目录,不是下载文件暂存目录。
第四步:设置本地包暂存路径
暂存目录默认是放到setup.exe的同级目录下,下载后名字类似ftp%3a%2f%2fcygwin.mirrors.pair.com%2f这样格式
第五步:设置网络连接方式
第六步:选择下载站点地址
起初尝试几个看哪个速度快就用哪个地址(如果感觉不快就点取消,再次来过)。 http://mirrors.kernel.org,速度感觉还挺快
第七步:等待加载安装项载入,选择安装项
我们编译NDK,在默认设置下,只需选择Devel(点击列表中Devel,将后面的Default改为Install,图中箭头所示),其它均为默认状态。 Cocos2d-x编译Android环境_第1张图片

第八步:等待下载完成
下载完成时间决定于你选择的安装包数量及网络连接速度,比如按照本文默认的选择方式,可能需要4-5个小时,下载后压缩包约950M,下载完成后会自动安装到上文设置的安装目录
提醒:第一次下载完成后,最好把下载的包目录做个备份,下次安装同样的环境可以直接使用离线安装方式(第二步中选择本地安装)。
第九步:验证Cygwin环境
安装完成后,先运行Cygwin一次(Cygwin.bat),以便创建一些用户环境文件,分别输入:
make -v
和,
gcc -v
如果检测成功,会有make和gcc相关版本信息打印出来。如下图: Cocos2d-x编译Android环境_第2张图片
接下来是修改在安装cygwin目录下,如本人安装目录如下C:\cygwin64,然后用编辑器点开.bash_profile(在home文件夹下:C:\cygwin64\home\john chen ),然后在最下面加上ndk路径以及cocos2dx路径:
#创建NDK的路径,在windows中我的路径为:E : /Cocos2D /android /android -ndk -r9c
NDK_ROOT = /cygdrive /e /Cocos2D /android /android -ndk -r9c
#添加到PATH环境变量中
export NDK_ROOT

#创建cocos2d -x的路径,在windows中我的路径为:E : /Cocos2D /cocos2d -x - 2. 2. 2
COCOS2DX_ROOT = /cygdrive /e /Cocos2D /cocos2d -x - 2. 2. 2
#添加到PATH环境变量中
export COCOS2DX_ROOT
Cocos2d-x编译Android环境_第3张图片

重启cygwin,输入:$cd $NDK_ROOT,可进入ndk对应目录就说明设置OK,如下图:
Cocos2d-x编译Android环境_第4张图片
在系统变量path后面添加内容: D:\cygwin64\bin;
4、创建Cocos2d-x项目:

以创建HelloWorld项目为例子,执行create_project.py脚本,进入Doc界面输入下面的命令:

(1)E: (切换盘符,因为我的Cocos2d-x源码在E盘,create_project.py在该目录下。)

(2)cdE:\Cocos2D\cocos2d-x-2.2.2\tools\project-creator (进入到create_project.py脚本所在目录)

(3)下载python,下载地址:http://www.python.org/getit/releases/2.7/。

(4)运行cmd命令,用python生成HelloWorld项目,命令为:

python create_project.py -project HelloWorld -package com.cocos2dx.org -language cpp (其中HelloWorld为工程名称,com.cocos2dx.org为我为android版本取的包标识名,记住包标示名不要出现特殊符号如"-",不然导入到eclipse是将会出现错误。)

Cocos2d-x编译Android环境_第5张图片

从上图可以看出运行该pyhton脚本,会生成针对ios、android、win32、mac、linux等各种平台的项目。

运行之后,会在相应的E:\Cocos2D\cocos2d-x-2.2.2\projects目录下找到刚建立的HelloWorld工程,其目录结构如下图:

Cocos2d-x编译Android环境_第6张图片


5、编译Cocos2d-x项目: 1)将proj.win32里面的.h以及.cpp文件拷贝到Classes中(如果以后修改那些.cpp文件或.h文件需要继续从proj.win32拷贝到Classes中覆盖掉之前的文件再生成新的android工程) Cocos2d-x编译Android环境_第7张图片
2)进入proj.android,用编辑器修改build_native.sh文件 在# options下面加入,如下: NDK_ROOT = /cygdrive /e /Cocos2D /android /android -ndk -r9c
COCOS2DX_ROOT = /cygdrive /e /Cocos2D /cocos2d -x - 2. 2. 2
GAME_ROOT =$COCOS2DX_ROOT /projects /HelloWorld
GAME_ANDROID_ROOT =$GAME_ROOT /proj.android
RESOURCE_ROOT =$GAME_ROOT /Resources
Cocos2d-x编译Android环境_第8张图片
3)进去proj.android\jni下面修改Android.mk,
将所有.cpp的路径都添加进去即可,如本人增加了下面那些路径 Cocos2d-x编译Android环境_第9张图片
4)用cygwin编译 好了 修改完这些保证没错误之后, 打开cygwin: a、进入下载的Cocox2d-x目录执行下面代码: $ cd $COCOS2DX_ROOT
$ chmod -R 755 * Cocos2d-x编译Android环境_第10张图片
说明:上述操作是为了提早消除由于权限引发的潜在问题,如果不做后面可能会遇到权限问题。此步骤执行后,后续再编译就可以跳过,或后续再出现权限问题可再次执行。
b、a操作执行完后进入项目Android版目录projects/HelloWorld/proj.android 执行./build_native.sh Cocos2d-x编译Android环境_第11张图片 到最后./build_native.sh执行之后没错误的话,它就会生产android项目了(成功的判断是看他是否生产.so文件),路径如下: Cocos2d-x编译Android环境_第12张图片
5)在eclipse上运行的android工程,导入projects/HelloWorld/proj.android这个就可以在eclipse上看到该工程了 Cocos2d-x编译Android环境_第13张图片
项目加载进来后会提示缺少cocos2dx包,我们去cocos2d-x-2.2.2/cocos2dx/pathform/android/java/scr/ 把org文件拷到我们项目 HelloWorld/proj.android/src/下,刷新下我们的项目,好了没问题了,可以编译了 Cocos2d-x编译Android环境_第14张图片 成功运行后会在bin/生成一个apk文件 Cocos2d-x编译Android环境_第15张图片 如果需要把项目在真机上弄成竖屏,只需在AndroidManifest.xml中改一改, android:screenOrientation="landscape"(横屏),android:screenOrientation="portrait"(竖屏),它默认为横屏。

参考资料: http://blog.csdn.net/yeungxuguang/article/details/18217029

来自为知笔记(Wiz)

更多相关文章

  1. Android使用xml自定义图片
  2. linux下搭建android NDK开发环境
  3. android 获取图片
  4. android 读取,写入图片到sd卡源码
  5. Android 图片缩放
  6. Android 取出 图片以字节形式存放到数据库的数据,并将图片显示
  7. android图片闪烁或帧动画

随机推荐

  1. java基础练习 01字串
  2. 【JAVA】通过ISBN一键获取书籍信息
  3. 201621123014《Java程序设计》第六周学习
  4. 【Android学习】案例学开发,天气记事本项
  5. java读写中文文件
  6. Java开发环境搭建:JDK8 下载与安装
  7. 自学java 的,有心的高手帮帮忙
  8. javaee基础知识点
  9. Java IO编程全解(三)——伪异步IO编程
  10. java内存垃圾回收模型