原地址:http://bbs.gameres.com/forum.php?mod=viewthread&tid=223671

关于开发环境的搭建,之前的相关文档已经很详细的说明,对环境的搭建请参考以前的相关文档,如有问题,及时在论坛里提问,会有管理人员快速解答,此文档主要针对eclipse下安卓编译.
    首先肯定是把暗黑世界的源码导入eclipse,源码导入进来后,就开始进行编译的准备工作,这里首先需要将Classes里面的.cpp文件和和相关的文件夹路径写进来,打开eclipse下的暗黑世界的工程,打开jni文件夹,找到Android.mk这个文件,双击打开.

<ignore_js_op>

打开以后将所有的.cpp文件的名称依次写进去,如下图所示一部分.cpp文件.

<ignore_js_op>

当然这么的.cpp文件全都手动填进去会很麻烦,在此可以使用一个shell脚本自动生成所有的.cpp文件清单,脚本的在此文档的附件中(list.sh).如何使用这个脚本呢?打开终端,依次输入如下命令

  1. cd $COCOS2DX_ROOT  //进入cocos2d-x的根目录
  2. ls                                         //列出所有目录,找到projects
  3. cd projects                         //进入projects目录
  4. ls                                         //找到暗黑世界的源码,进入proj.android目录
  5. cd tsDemo                         //...
  6. ls                                         //...
  7. cd proj.android                 //...
  8. ls                                            //...
  9. cd jni                                 //...
  10. ls                                         //进入此目录后会看见清单中有个list.sh文件
  11. ./list.sh ../../Classes           //使用list.sh列出Classes的.ccp文件清单

复制代码

<ignore_js_op>

将生成的.cpp清单全都复制,然后粘贴进入android.mk里面的对应位置即可.

接下来还得把Classes里面的一些文件添加进来,具体的添加位置如下图所示.

<ignore_js_op>

添加文件夹路径时请注意,此处是为了去找Classes的代码,所以此处的路径可以不写完整的路径,但在IDE中,比如Xcode中,一定要把缺省的路径添加进去.
好啦!准备工作做好了,开始编译代码,右击工程,Run As->Android Application,开始编译,但此时可能会报Can't find NDK.Please define NDK,如果出现这种错误,那么手动把NDK的添加进工程,Project->Properties->C/C++ Build->Environment,在右边的区域,点击Add,按下图所示name为NDK_ROOT,然后在Value里写入自己的NDK路径即可.

<ignore_js_op>

问题都解决了,现在开始编译源码,整个过程会花费一段时间(如果编译过程出现其他问题,一定记得去论坛发帖,会有相关人员及时给与回复),编译完成后,在工程bin目录下会看见生成的.apk安装包,如果想看编译后运行的效果,还是直接接入真机为好,android自带模拟器的速度实在不敢恭维.
Run->Run Configurations->Android Application->tsDemo,在右边选择Target,选中Always prompt to pick device,这样连上真机以后,每次运行会自动识别你的设备去安装.

<ignore_js_op>

2013-9-23 10:38:34 上传

下载附件 (76.89 KB)

 

运行以后的程序显示出来可能是横屏的,得自己去手动修改android的配置文件,在bin目录下找到AndroidManifest.xml,打开后,看见里面有很多项,具体每一项是什么意思,网上很多,此处不做太多的解释,找到这android:screenOriention,修改里面的值为portrait即可正常运行程序.
在res目录下的values目录下有一个strings.xml文件,打开后在version后面里可以设置版本号,string标签后即可修改安装在设备上的apk的名字,在此目录下还有几个其他的文件夹,从文件夹的名字就可以看出,他们分别是为放置不同分辨率的apk的icon准备的.
最后,大家如果有问题一定记得去论坛发帖噢!

list.sh在附件中“免铜板”下载!

《暗黑世界》安卓APK 编译流程详细说明教程!(图文)的更多相关文章

  1. cocos2dx 3.x(在Mac平台下利用Eclipse打包安卓apk安装包详细教程)

    最近在学习cocos2dx在MAC上如何打包apk,今天先把安装JDK和ANT的过程记来. 首先,打开终端,输入"java -version" 点击回车后,出现如下提示: 我们的M ...

  2. cocos2d-x游戏开发(十七)NDK+ant编译暗黑世界

    个人原创,欢迎转载http://blog.csdn.net/dawn_moon/article/details/12308967 9秒论坛的客户端暗黑世界,ios已经跑过了,今天搞了一下安卓的,记录一 ...

  3. 安卓---apk反编译

    转自:http://blog.csdn.net/vipzjyno1/article/details/21039349 在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮 ...

  4. 专注于C#.Net WPF软件开发-软件反编译-软件破解-逆向-靖芯科技-包括安卓APK反编译

    靖芯科技提供.Net软件开发,软件修改定制二次开发,软件破解,反编译,逆向等各项优质服务: 包括安卓APK软件反编译. 包括但不限于C#,WPF,Surface,Winform,Asp.net.JAV ...

  5. IONIC 打包安卓apk详细过程

    参照以下链接: https://blog.csdn.net/qq_20264891/article/details/79319408 当 cordova 项目安装的 android 平台版本 与 系统 ...

  6. 安卓apk反编译

    在win环境反编译安卓APP的.apk文件 安卓apk 反编译为 Java源码图文教程 Android安全攻防战,反编译与混淆技术完全解析(上)

  7. 《暗黑世界GM管理后台系统》部署+功能说明文档

    http://www.9miao.com/product-10-1073.html <暗黑世界GM管理后台系统>部署+功能说明文档 <暗黑世界GM管理后台系统>部署+功能说明文 ...

  8. Android Activity启动流程, app启动流程,APK打包流程, APK安装过程

    1.Activity启动流程 (7.0版本之前) 从startActivity()开始,最终都会调用startActivityForResult() 在该方法里面会调用Instrumentation. ...

  9. Firefly卡牌手游《暗黑世界V1.5》服务器端源码+GM管理后台源码

    http://www.9miao.com/content-6-304.html Firefly卡牌手游<暗黑世界V1.5>服务器端源码+GM管理后台源码 关于<暗黑世界V1.5> ...

随机推荐

  1. C#一些小知识点

    1. 在Load时候由代码来做控件PictureBox,并且用代码将图片加载进去: private void Form2_Load(object sender, EventArgs e) { Dire ...

  2. .NET学习笔记(4) — C#数据类型

    目录 一:C#数据类型介绍 二:值类型和引用类型的区别和联系? 三:堆内存和栈内存? 四:参考资料   一:C#数据类型介绍   1:初识C#预定义数据类型 在C#的语言体系中,表示具体数据格式的规范 ...

  3. git命令(流程)

    1,配置你的信息: git config --global user.name 你的名字 git config --global user.email 你的邮箱 --global 表示所有git仓库都 ...

  4. 用友NC V6.3打造集团企业高效信息平台

    近年来,随着互联网快速发展,信息化管理的应用也越来越普及,信息化建设已经深入到很多企业的核心业务,而且为了确保业务稳定.可靠并快速.有效地 开展,企业经常会运用多个信息系统进行辅助支撑,但是,许多企业 ...

  5. Linux - 查看系统的版本信息

    在 Linux 中,有多种方法可以查看系统的版本信息. uname 命令 huey@huey-K42JE:~$ uname -a Linux huey-K42JE 3.5.0-43-generic # ...

  6. 第三章 jQuery中的DOM操作

    DOM(Document Object Model)文档对象模型,每张网页都能用DOM表示出来,每一份DOM都能看成一颗DOM树. jQuery继承了JavaScript对DOM对象操作的特性,使开发 ...

  7. linux+asp.net core+nginx+sql server

    Linux Disibutaion:Ubuntu 16.04.1 LTS Web Server:Nginx.Kestrel 安装.net core sudo sh -c 'echo "deb ...

  8. 关于ServletConfig的小结

         在Servlet的配置文件中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数.当servlet配置了初始化参数后,web容器在创建servlet ...

  9. struts2中<s:property>的用法

    1,访问Action值栈中的普通属性: <s:property value="attrName"/> 2,访问Action值栈中的对象属性(要有get set方法):  ...

  10. IOS开发之NSPredicate谓词的用法

    编程的人员不管是上过大学还是从培训机构出来的或做后台的.前端的都应该SQL语句有所了解,我们知道,在SQL语句当中 where 条件表达式可以对二维关系表的数据做条件筛选.微软的C# .net中也实现 ...