【winows7+android-ndk-r9+Cygwin 】cocos2dx 2.*游戏移植Android平台完全手册
为了有不少走的弯路。这里简要记录cocos2d开发环境的搭建、android开发环境搭建、android NDK环境搭建。终于实现cocos2dx 2.* 游戏Android平台移植。
转载请注明出处:http://blog.csdn.net/oyangyufu/article/details/24498213
cocos2dx 2.* 游戏Android平台移植所须要的必要条件
1、cocos2d开发环境搭建,请见前面写的文档:http://blog.csdn.net/oyangyufu/article/details/24009141
2、android开发环境搭建。请见文档:http://download.csdn.net/detail/oyangyufu/7251299
3、安装包准备:
android-ndk-r9-windows-x86_64.zip下载地址: http://developer.android.com/tools/sdk/ndk/index.html
setup-x86_64.exe下载地址:http://www.cygwin.com/
Android NDK概述
NDK全称:Native Development Kit。
1、NDK是一系列工具的集合。
* NDK提供了一系列的工具,帮助开发人员高速开发C(或C++)的动态库,并能自己主动将so和java应用一起打包成apk。这些工具对开发人员的帮助是巨大的。
* NDK集成了交叉编译器。并提供了对应的mk文件隔离CPU、平台、ABI等差异。开发者仅仅须要简单改动mk文件(指出“哪些文件须要编译”、“编译特性要求”等),就能够创建出so。
* NDK能够自己主动地将so和Java应用一起打包,极大地减轻了开发者的打包工作。
解压Android NDK至:
D:\android-ndk-r9-windows-x86_64\android-ndk-r9
setup-x86_64安装
步骤:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
安装完毕后桌面会有快捷方式:, 安装文件夹D:\cygwin64下会有文件夹。相当于创建了小型linux系统:
測试Cygwin64,Cygwin64终端打开输入gcc -v,例如以下证明成功:
配置Cygwin64环境变量
打开.bash_profile配置文件定义NDK_ROOT、COCOS2D_ROOT变量,让用户每次登入系统自己主动读取此变量
$ vi .bash_profile 在末尾加入例如以下:
保存,重新启动终端。
改动项目c++文件路径
打开/cygdrive/e/cocos2d-x/cocos2d-x-2.2.3/projects/testlianliankan/proj.android/jni/Android.mk, 改动LOCAL_SRC_FILES变量为:
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp \
../../Classes/GameLayer.cpp \
../../Classes/GBKToUTF8.cpp \
../../Classes/MapLayer.cpp \
../../Classes/MapNode.cpp \
../../Classes/PauseLayer.cpp
编译cocos2d-x游戏项目 Android版本号
进入到项目文件夹,运行编译脚本。例如以下:
大概要10分钟编译完毕,在libs/armeabi 下生成libcocos2dcpp.so文件,例如以下:
最后将cocos2d项目导入配置好NDK eclipse来生成apk包。
配置Android NDK环境:
打开eclipse。选择 window->Preferences,配置ndk路径:
移植库与资源
1、将E:\cocos2d-x\cocos2d-x-2.2.3\cocos2dx\platform\android\java\src下org 复制到E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\proj.android\src以下。以便导入cocos2d项目时能找到cocos2d库。
2、将E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\Resources下的资源复制到E:\cocos2d-x\cocos2d-x-2.2.3\projects\testlianliankan\proj.android\assets以下。
项目导入project编译
打开eclipse, file->import
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
勾选要导入项目。Finish。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3lhbmd5dWZ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
版权声明:本文博客原创文章。博客,未经同意,不得转载。
【winows7+android-ndk-r9+Cygwin 】cocos2dx 2.*游戏移植Android平台完全手册的更多相关文章
- Android NDK R9 安装配置 无需Cygwin
转自:http://www.cr173.com/soft/66623.html NDK是一个工具集,可让您实现您的应用程序使用本机代码的语言,如C和C + +.Android NDK 是在SDK前面又 ...
- Android NDK r9的配置与使用
Android NDK 配置: 网上有很多教程,但大部分是旧版本的内容,最新版本的已经改变,为了让大家少走弯路,在这里针对r9的配置进行记录分享. 要玩NDK,你或多或少要用到以下一些东西,所以先做一 ...
- Android NDK开发指南---Application.mk文件和android.mk文件
https://android.googlesource.com/platform/development/+/donut-release/ndk/docs/OVERVIEW.TXT https:// ...
- Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8
在使用Eclipse 直接编译NDK,有时候会报类似以下错误 Android NDK: WARNING: APP_PLATFORM android-14 is larger than android: ...
- Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 具体图文解说
版权声明:本博客全部文章均为原创.欢迎交流.欢迎转载:转载请勿篡改内容,而且注明出处,谢谢! https://blog.csdn.net/waldmer/article/details/3272500 ...
- Android NDK编程浅入深出之--Android.mk
Android.mk Android.mk是一个向Android NDK构建系统描写叙述NDK项目的GUN Makefile片段.它是每个NDK项目的必备组件. 构建系统希望它出如今jni子文 ...
- Cocos2dx开发游戏移植到Android平台
第一步:安装配置安卓SDK,下载NDK并解压,下载cygwin并安装 第二步:导入platform文件夹下,android文件夹下java文件夹 在eclispe的windows--pereferen ...
- findlibrary returned null产生的联想,Android ndk开发打包时我们应该怎样注意平台的兼容(x86,arm,arm-v7a)
非常多朋友在开发Android JNI的的时候,会遇到findlibrary returned null的错误,由于某种原因,so没有打包到apk中.以下浅析下引起该错误的原因以及平台兼容性问题. A ...
- Cocos2d-x游戏移植到Android平台
1.所需环境支持:Android SDK.NDK.Eclipse.Cygwin.(本人所用系统WIN7-64位) (1)Cygwin的下载安装: Cygwin是Windows下的Linux模拟环境,用 ...
随机推荐
- 数据类型总结——String(字符串类型)
相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...
- Vim 在 windows 下的应用
常用命令的学习. 第一部分 Esc:返回到 正常模式 h j k l:左下上右 x:删除字符(normal mode) :q!:放弃所有更改并退出vim :wq:保存所有更改并退出vim i:进入编辑 ...
- [AngularFire2] Build a Custom Node Backend Using Firebase Queue
In this lesson we are going to learn how to build a custom Node process for batch processing of Fire ...
- Intent七在属性之一:ComponentName 分类: H1_ANDROID 2013-11-10 10:54 1184人阅读 评论(1) 收藏
注:在<疯狂android讲义>中,此属性称为Component,官方文档中称为ComponentName. 1.The name of the component that should ...
- Android 使用binder访问service的方式
binder机制是贯穿整个Android系统的进程间访问机制,经常被用来访问service,我们结合代码看一下binder在访问service的情形下是怎么具体使用的. service 你可以理解成没 ...
- C# 使用 RabbitMQ
1. RabbitMQ MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接 ...
- [SCSS] Reuse Styles with the SCSS @extend Directive
We can write reusable styles with the SCSS @extend or @mixin directives. Which one is better? It dep ...
- 从Handler+Message+Looper源代码带你分析Android系统的消息处理机制
PS一句:不得不说CSDN同步做的非常烂.还得我花了近1个小时恢复这篇博客. 引言 [转载请注明出处:http://blog.csdn.net/feiduclear_up CSDN 废墟的树] 作为A ...
- Oauth入门学习
在一些网站总是看到调用其他网站的信息的实例,比如在人人网中导入MSN联系人,在Facebook中导入gmail,yahoo mail好友,第三方网站不需要总知道你的密码,对于应用的授权完全交给你自己, ...
- 关于用什么作为dll版本号的思考
作者:朱金灿 来源:http://blog.csdn.net/clever101 一个软件模块的版本如何维护呢?毫无疑问,它需要一个版本号.通过比对版本号就知道哪个高版本,哪个是低版本了.软件模块以d ...