一、APK Multi-Tool介绍
    APK Multi-Tool 是APK Manager的升级版,是一个强大的APK反编译工具,集多种功能于一身,是居家必备、做ROM必选的工具!
    这是一个比较方便的适合非开发者的小工具,可以对一些APK程序做自己喜欢的修改!
    目前官方最新版是APK Multi-Tool 1.0.3 ,官方网站是:http://apkmultitool.com

二、汉化说明
    此版本基于官方 APK Multi-Tool 1.0.3 (05/17/2012) 汉化,完全尊重原版,但去除了在线更新功能。官方英文原版每次执行脚本的时候都会先在线检查更新,这可能因为网络问题导致长久等待,而且在线更新将会覆盖汉化脚本,使汉化失效。
    此版本为绿色版,免安装,解压后双击Script.bat就能直接运行,不会对注册表进行任何操作。如果你不再使用此软件,直接从计算机删除程序目录即可,不会留任何垃圾。
    此汉化版本仅供学习交流之用,请不要用于商业目的。鉴于本人英语水平有限,不足之处还望指出!

三、下载地址
    1. CSDN:  http://download.csdn.net/detail/manction/4339688
    2. 微盘:  http://vdisk.weibo.com/s/66HqH
    3. 115网盘:  http://115.com/file/c25dzz18
    4. 趣盘:  http://manction.qupan.cc/7122347.html

四、前提条件
    要正常使用APK Multi-Tool ,您的计算机必须满足以下两个条件:
    1. JDK (Java Development Kit)
    2. Adb (Android SDK tools And platform-tools)

(1) JDK的安装及环境变量的配置
    1. 去Oracle官方网站下载并安装JDK,下载地址:
    http://www.oracle.com/technetwork/java/javase/downloads
    注意是下载JDK,而不是JRE

JDK (Java Development Kit,Java开发工具包)
    JRE (Java Runtime Environment,Java运行环境)

你也可以点击以下链接直接下载JDK:
    32位:http://download.oracle.com/otn-pub/java/jdk/6u32-b05/jdk-6u32-windows-i586.exe
    64位:http://download.oracle.com/otn-pub/java/jdk/6u32-b05/jdk-6u32-windows-x64.exe

2. 配置环境变量
    下载并安装JDK之后,你需要在计算机的“系统属性”里配置以下环境变量:

(步骤:在计算机的桌面上右击“我的电脑”,点击“属性”-“高级”-“环境变量”)

变量名:JAVA_HOME
    变量值:D:\java\jdk1.6.0_32 (JDK安装目录)

3. 测试JDK是否安装成功
    在计算机的“运行”(Win+R)里打开 CMD

输入 java – version 命令,如果出现以下提示,表示JDK安装成功!

C:\Documents and Settings\Administrator>java -version
    java version "1.6.0_20"
    Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
    Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode)

(2) ADB的安装及环境变量的配置
    1. 首先要去Google官方下载Android SDK,下载地址是:
    http://developer.android.com/sdk/index.html

你也可以点击以下链接直接下载Android SDK:
    http://dl.google.com/android/installer_r18-windows.exe

2. 下载并安装Android SDK之后,打开SDK Manager,勾选Packages下面的Tools,只需要下载Android SDK Tools和Android SDK Platform-tools,大小为78MB,其他的不用下载。

3. 设置Android SDK环境变量
    1) 新建环境变量
    (步骤:在计算机的桌面上右击“我的电脑”,点击“属性”-“高级”-“环境变量”)

变量名:ANDROID_SDK_HOME
    变量值:D:\Android\android-sdk    (SDK安装目录)

2) 添加Path路径
    (一般来讲系统上默认都会有Path变量,我们只需要找到并编辑即可,直接在变量值后面添加以下变量值;如果不存在Path变量,那就新建一个吧)

变量名:Path
    变量值:;%ANDROID_SDK_HOME%\tools;%ANDROID_SDK_HOME%\platform-tools (注意前面的分号)

4. 测试Android SDK和ADB是否安装成功
    在计算机的“运行”(Win+R)里打开 CMD,输入 adb 命令,如果出现以下提示,表示Android SDK和ADB安装成功!

五、使用教程
    完成了JDK和SDK的安装和配置,现在终于可以开始使用APK Multi-Tool反编译APK程序了!

友情提示:
    如果你使用的是官方原版APK Multi-Tool,在完成了JDK和SDK的安装和配置之后,你还必须把Android SDK安装目录android-sdk\platform-tools文件夹的以下3个文件拷贝到APK Multi-Tool目录APK Multi-Tool\platform-tools文件夹下,否则程序不能正常运行。

adb.exe
    AdbWinApi.dll
    AdbWinUsbApi.dll

PS: 本人提供的汉化版已经包含这3个文件,无需修改。

APK是Android Package的简称,是安卓的安装文件。通过APK Multi-Tool这款软件,先解压apk文件然后对其进行编辑,然后再打包,最后签名。这样就可以安装自己修改过的apk文件了。

文件夹说明:
    keep 保存修改前文件
    projects 包含反编译出来的文件
    place-apk-here-for-modding 存放待修改的文件(文件名一定不要有空格,最好用英文命名)
    place-apk-here-for-signing 存放待签名的文件
    place-apk-here-to-batch-optimize 存放批量处理的文件(可以多个)
    place-ogg-here 存放待OGG优化的文件

具体步骤是这样的:

1) 普通apk文件
    普通apk文件就是从各种网站上下载下来的第三方软件,比如我们从腾讯网下载一个Android版手机QQ : mobileqq_2012_android_build0130.apk

(1) 把需要反编译的APK文件放到place-apk-here-for-modding文件夹里面;
    (2) 运行Script.bat,在CMD窗口中输入23,设置当前项目,选择要编辑的apk文件,回车确认;
   

(3) 在CMD窗口中输入9,apk文件就被反编译到projects文件夹了;
    

(4) 我们对project文件夹中的文件进行编辑,一般APK的图片文件放在XXX.apk\res\drawable-hdpi文件夹里面,我们可以通过Photoshop等图像处理软件对其中的图片包括软件的图标进行编辑替换;而APK的语言文件一般是在XXX.apk\res\values文件夹的strings.xml文件里面,我们可以使用EditPlus等文字编辑工具对里面的文字进行编辑;
    

(5) 在CMD窗口中输入11,重新编译apk,这个过程花费的时间肯可能比较长,请耐心等候。编译成功之后,你可以看到place-apk-here-for-modding文件夹里面出现了一个unsignedXXX.apk,当然,没有签名的APK还是不能安装的;
   

(6) 在CMD窗口中输入12,进行apk签名,你可以看到place-apk-here-for-modding文件夹里面出现了一个signedXXX.apk,APK修改成功,这样就可以拿过来安装了;
   

(7) 如果你手机连接着数据线可以在CMD窗口中输入6,直接用adb安装编辑好的apk文件到手机里。

2) 系统apk文件
    系统apk文件一般是手机system/路径里面的,像/system/app/xxx.apk(自带应用程序)还有像/system/framework/framework-res.apk都可以编辑。

注意:
    1. 系统文件的编辑有些风险的,就像你用R.E管理器删除系统应用一样,搞不好就变成循环重启。所以编辑之前还是用recovery做个当前系统的Backup备份;

2. 注意要保证你的System文件夹里有足够大的空间,不然改好了push不进去。

(1) 手机仅充电状态连接电脑,在CMD窗口中输入0(提取系统apk文件),然后输入提取路径例如/system/app/xxx.apk,接着重新命名,这个名字可以随意取,建议不要有空格;
    (2) 在CMD窗口中输入1,apk文件就被解压到projects文件夹了;
    (3) 我们对project文件夹中的文件进行编辑,一般APK的图片文件放在XXX.apk\res\drawable-hdpi文件夹里面,我们可以通过Photoshop等图像处理软件对其中的图片包括软件的图标进行编辑替换;而APK的语言文件一般是在XXX.apk\res\values文件夹的strings.xml文件里面,我们可以使用EditPlus等文字编辑工具对里面的文字进行编辑;
    (4) 在CMD窗口中输入3,重新压缩成apk,你可以看到place-apk-here-for-modding文件夹里面出现了一个unsignedXXX.apk;
    (5) CMD窗口中输入8(把编辑好的系统apk文件重新push到系统里面),然后输入路径,比如输入/system/app/xxx.apk,这个一定要跟你push出来的路径和文件名完全一样才能被替换。

汉化: Manction
    主页: http://blog.sina.com.cn/manction
    微博: http://t.qq.com/manction
    日期: 2012年5月28日

APK Multi-Tool强大的APK反编译工具终极教程的更多相关文章

  1. .NET Reflector 8.3.3.115 官方最新版+注册机(强大的.NET反编译工具破解版)

    Lutz Roeder’s .NET Reflector,是一个可以将以.NET Framework为基础开发出来的的DLL或EXE文件,反编译为原始程序的工具软件..NET Reflector 工具 ...

  2. Reflector8.5 .net反编译工具 破解教程

    一.断网 二.打开软件.打开注册机 三. 四. 五. 六. 七. 八.

  3. ILSpy,DLL反编译工具,学习与了解原理的好帮手

    你是否一直苦于找到了好的dll却只知道怎么使用而不知道其原理. 你是否在使用一个dll的时候发现它在一些参数时报错了却没法解决. 你是否想成为一个优秀的.net开发,成为一个优秀的系统制造者. 那你需 ...

  4. Atitit.反编译apk android源码以及防止反编译apk

    Atitit.反编译apk android源码以及防止反编译apk 1.1. Tool  apk逆向助手1 1.2. 二.使用dex2jar + jd-gui 得到apk的java源码1 1.3. 用 ...

  5. andriod的apk文件相关的编译反编译工具

    1.smali-1.2.6.jar 用途:.smali文件 转成 classes.dex文件 说明:.smali文件,类似于.class文件,可以用普通文本编辑器查看和修改. 用法举例:命令行:jav ...

  6. apk反编译工具

    反编译工具: apktool:资源文件获取,可以提取出图片文件和布局文件进行使用查看 dex2jar:将apk反编译成Java源码(classes.dex转化成jar文件) jd-gui:查看APK中 ...

  7. apk反编译工具-apktool

    apk很easy被反编译,关于这篇文章apktool反编译工具. (一)优势反编译 1.能学习别人优秀代码 看看优秀apk他们的string.color命名规则,看看布局排版等都能学习到东西. 2.进 ...

  8. Unity3D 导出的apk进行混淆和加固防止反编译

    前言: 对于辛辛苦苦完成的apk程序被人轻易的反编译了,那就得不偿失了,这篇文章就是解决Unity打包出来的apk进行代码加固和混淆. 准备资料: 1:Obfuscator.zip  作用是代码混淆, ...

  9. apk 反编译工具的使用

    在学习android 开发的时候,我们经常回尝试使用到别人的apk,希望能了解别人怎么编写的代码,于是想要一个能实现其反编译的软件,将软件反编译出来,查看其代码. 工具/原料 反编译软件dex2jar ...

随机推荐

  1. VxWorks6.6 pcPentium BSP 使用说明(一):基本概念

    "VxWorks6.6 BSP 使用说明"将发布pcPentium和idp945两个系列的BSP的使用说明.每个系列约5篇文章.之后还将发布由这两个官方提供的BSP的实战移植方法. ...

  2. freemarker写select组件(二)

    freemarker写select组件 1.宏定义 <#macro select id datas value=""> <select id="${id ...

  3. Linux查看当前正在运行的进程

    Linux查看当前正在运行的进程 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ps PID TTY TIME CMD 2576 pts/0 00:00:00 ...

  4. 微信公众号开发系列-Http请求封装基类

    HttpHelper请求封装基类,支持get请求和POS请求,方便微信开发接口交互,为后面接口交互做准备. 1.HttpHelper帮助基类 [csharp] view plaincopy using ...

  5. Rational Rose_2007的下载、安装与破解--UML建模软件

    一.下载Rational.Rose_2007安装包与破解文件 对于Rational.Rose_2007,您可以到我的百度网盘计算机相关专业所用软件---百度云链接下载下载,另外附上安装需要的通行证(破 ...

  6. JavaScript中的this的指代对象详解

    在javascript里面,this是一个特殊的对象,它不像其他编程语言那样,是存储在实例中的值,直接指向此实例. 而是作为一个单独的指针,在不同的情况之下,指向不同的位置,这也是为什么我们会将它搞混 ...

  7. 【Luogu2759】奇怪的函数(数论)

    [Luogu2759]奇怪的函数(数论) 题面 题目描述 使得 \(x^{x}\)达到或超过 n 位数字的最小正整数 x 是多少? 输入输出格式 输入格式: 一个正整数 n 输出格式: 使得 \(x^ ...

  8. BSGS算法(大步小步算法)

    计算\(y^x ≡ z \ mod\ p\) 中 \(x\) 的解. 这个模板是最小化了\(x\) , 无解输出\(No \ Solution!\) map<ll,ll>data; ll ...

  9. Bzoj3930: [CQOI 2015] 选数 & COGS2699: [CQOI 2015] 选数加强版

    题面 Bzoj COGS加强版 Sol 非加强版可以枚举AC这里不再讲述 设\(f(i)\)表示在\([L, H]\)取\(N\)个,\(gcd为i\)的方案数 \(F(i)=\sum_{i|d}f( ...

  10. c# List实现原理

    在研究前辈们写的代码,总是搞不明白.word文中引文的索引和引文列表中的索引对应关系是什么呢?是如何对应上的?我冥思苦想,昨天又系统地看了下代码,才所有悟,所以记录下我的探索过程. 如下图所示: 图1 ...