原地址: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. 基于Selenium2+Java的UI自动化(4) - WebDriver API简单介绍

    1. 启动浏览器 前边有详细介绍启动三种浏览器的方式(IE.Chrome.Firefox): private WebDriver driver = null; private String chrom ...

  2. zabbix的邮件报警

    邮件报警插件 #!/usr/bin/python #coding:utf-8 import smtplib from email.MIMEText import MIMEText import os ...

  3. How Indexes Are Stored

    reference:  http://docs.oracle.com/cd/B28359_01/server.111/b28318/schema.htm#CHDJGADJ 当创建索引的时候,Oracl ...

  4. VS2013开发Windows服务项目

    这篇随笔里,我将介绍如何用VS2013开发Windows服务项目,实现的功能是定时发送电子邮件. 开发环境:VS2013,SQL Server2008,采用C#语言开发 步骤一:创建Windows服务 ...

  5. ### C++总结-[类成员函数]

    C++类中的常见函数. #@author: gr #@date: 2015-07-23 #@email: forgerui@gmail.com 一.constructor, copy construc ...

  6. Action Filters for ASP.NET MVC

    本文主要介绍ASP.NET MVC中的Action Filters,并通过举例来呈现其实际应用. Action Filters 可以作为一个应用,作用到controller action (或整个co ...

  7. Wix: Using Patch Creation Properties - Minor Update

    Based on the project created in Wix: Using Patch Creation Properties - Small Update, Following chang ...

  8. SSD论文优秀句子

    1. Nonvolatile memory(e.g., Phase Change Memory) blurs the boundary between memory and storage and i ...

  9. OpenSUSE共享网络

    因为想要使用Arduino Ethernet扩展版,想要搭建一个局域网供其使用有线,无奈路由器离我太远.遂有本文. 实验器材: 装有OpenSUSE.有线网卡.无线网卡的笔记本. 路由器一台. 实验步 ...

  10. javascripct数组

    定义数组 数组对象用来在单独的变量名中存储一系列的值. 我们使用关键词 new 来创建数组对象.下面的代码定义了一个名为 myArray 的数组对象: var myArray=new Array() ...