[cocos2dx]windows上编译安卓程序

简介: 首先在exclipe上配置好java的jdk1.6或更高,配置好android环境(最好有android2.1或2.2以及更高版本的sdk)。 在下载个ndk,ndk解压后先放到一边,cygwin,解压后,sygwin解压安装会比较久大概4-5个小时,如果解压安装成功, cygwin安装过程请参考http://wenku.

首先在exclipe上配置好java的jdk1.6或更高,配置好android环境(最好有android2.1或2.2以及更高版本的sdk)。

在下载个ndk,ndk解压后先放到一边,cygwin,解压后,sygwin解压安装会比较久大概4-5个小时,如果解压安装成功,

cygwin安装过程请参考http://wenku.baidu.com/view/88b001ef4afe04a1b171de05.html看到第三步就行了,接下来继续看

安装好cygwin后验证下是否成功打入(注意空格)make -v ,gcc -v 没有出现意外的话就出现以下画面

表示你已经装好cygwin了,接下来是修改在安装cygwin目录下,如本人安装目录如下D:\cygwinx\home\Administrator

然后最好用UE编辑器点开.bash_profile,然后在最下面加上

(ndk路径以及cocos2dx路径即/cygdrive/你所在的盘的ndk路径如下)

NDK_ROOT=/cygdrive/e/AndroidNDK/android-ndk-r8e
export NDK_ROOT
COCOS2DX_ROOT=/cygdrive/d/cocos2d-2.1beta3-x-2.1.1
export COCOS2DX_ROOT

然后就完成了大半了,再在D:\cocos2d-2.1beta3-x-2.1.1下点击


第一个填写的是包名称,一般填写***.***.***之类,

第二个是填写工程名,你根据需要定义咯

在最好选项是选择哪种android的sdk,最好使用经历低的版本(如2.1或2.2)比较好兼容。

然后生产出来时个简单的helloworld工程,如果是要将自己的工程装成android的,及将生成工程文件中的proj.android拷贝到自己的工程文件中,如下图


然后需要修改三个地方如

1)将proj.win32里面的.h以及.cpp文件拷贝到Classes中

(如果以后修改那些.cpp文件或.h文件需要继续从proj.win32拷贝到Classes中覆盖掉之前的文件再生成新的android工程)

2)进去proj.android\jni下面修改Android.mk,

将所有.cpp的路径都添加进去即可,如本人增加了下面那些路径,

3)用UE编辑器修改build_native.sh文件

在第三行下面加入,如下

NDK_ROOT=/cygdrive/E/AndroidNDK/android-ndk-r8e
COCOS2DX_ROOT=/cygdrive/D/cocos2d-2.1beta3-x-2.1.1
GAME_ROOT=$COCOS2DX_ROOT/RussiaGame    (注意RussiaGame是我cocos2dx的工程名)
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources


好了 修改完这些保证每错误之后

打开cygwin,然后经过下面路径(以本人路径为参照)


到最后./build_native.sh之后没错误的话(这个过程比较久大概十几二十分钟,有些可能要半个钟头),它就能生产android项目了(成功的判断是看他是否生产.so文件)

成功的话在路径D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android\libs\armeabi下能看到libgame.so文件

然后接下来就可以生成可以在eclipse上运行的android工程了,导入D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android这个就可以在eclipse上看到该工程了


如果出现


如果一开始这个文件没有存在的话(我当时是一开始没有这个文件,当时很悲剧,常看了项目jdk是1.6的没问题,最后发现就是这个文件缺失造成的)

右键点击你的项目-》选择导入-》再点击browse-》(进入到你的项目所在的目录,进入cocos2dx->platform->android->java)然后就会出现那个文件了 以及有个libcocos2dx项目也有了(这个项目相当于类库不要删掉它),以后就不用重复上面这些导入了。

然后没有报错就说明成功啦,然后就可以在eclipse上进行真机运行啦(注意好像虚拟机运行一直会出现bug,我也一直没成功,所以建议真机运行吧,好像现在只能真机运行才行),然后就可以成功运行以及会在bin文件下回生成一个apk文件可以拷贝给大家玩啦,好开心的喔。。。。。

然后到现在这样就算是转android成功了,

(悄悄说下 ,如果需要把项目在真机上弄成竖屏,及要在AndroidManifest.xml中改一改, android:screenOrientation="landscape"(横屏),android:screenOrientation="portrait"(竖屏),它默认为横屏),到现在好开心的,打了这么多,大家一起学习吧加油


相关文章
|
3月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
283 1
|
1月前
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
92 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
1月前
|
编译器 Android开发
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
|
1月前
|
Ubuntu Shell API
Ubuntu 64系统编译android arm64-v8a 的openssl静态库libssl.a和libcrypto.a
Ubuntu 64系统编译android arm64-v8a 的openssl静态库libssl.a和libcrypto.a
|
3月前
|
Android开发 Docker 容器
docker中编译android aosp源码,出现Build sandboxing disabled due to nsjail error
在使用Docker编译Android AOSP源码时,如果遇到"Build sandboxing disabled due to nsjail error"的错误,可以通过在docker run命令中添加`--privileged`参数来解决权限不足的问题。
707 1
|
3月前
|
Java Android开发 芯片
使用Android Studio导入Android源码:基于全志H713 AOSP,方便解决编译、编码问题
本文介绍了如何将基于全志H713芯片的AOSP Android源码导入Android Studio以解决编译和编码问题,通过操作步骤的详细说明,展示了在Android Studio中利用代码提示和补全功能快速定位并修复编译错误的方法。
142 0
使用Android Studio导入Android源码:基于全志H713 AOSP,方便解决编译、编码问题
|
3月前
|
API 开发工具 Android开发
Android Studio:解决AOSP自编译framework.jar引用不到的问题
在Android Studio中解决AOSP自编译framework.jar引用问题的几种方法,包括使用相对路径、绝对路径和通过`${project.rootDir}`动态获取路径的方法,以避免硬编码路径带来的配置问题。
258 0
Android Studio:解决AOSP自编译framework.jar引用不到的问题
|
3月前
|
搜索推荐 Android开发
学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?
本文分享了不同价位电脑配置对于编译AOSP安卓系统源代码的影响,提供了从6000元到更高价位的电脑配置实例,并比较了它们的编译时间,以供学习AOSP源代码时电脑配置选择的参考。
261 0
学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?
|
3月前
|
Android开发
Android编译出现Warning: Mapping new ns to old ns的解决方案
Android编译出现Warning: Mapping new ns to old ns的解决方案
348 3
|
3月前
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
504 1
下一篇
无影云桌面