工具介绍:

apktool

作用:资源文件获取,能够提取出图片文件和布局文件进行使用查看

下载安装方法使用文档

dex2jar

作用:将apk反编译成java源代码(classes.dex转化成jar文件)

jd-gui

作用:查看APK中classes.dex转化成出的jar文件,即源代码文件

反编译流程:

一、反编译Apk得到Java源代码

1.首先找到Android软件安装包中的classes.dex,把apk文件改名为.zip,然后解压缩其中的classes.dex文件,它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件

2.把classes.dex拷贝到dex2jar.bat所在目录。
windows系统下:
在命令行模式下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex ,生成classes.dex.dex2jar.jar
Ubuntu系统下:
在终端下定位到dex2jar.sh所在目录,运行
sh dex2jar.sh classes.dex
则可生成classes.dex.dex2jar.jar

3.运行JD-GUI工具(它是绿色无须安装的)

打开上面的jar文件,即可看到源代码

二、apk反编译得到程序的源码、图片、XML配置、语言资源等文件

1.下载上述工具中的apktool,解压得到3个文件:aapt.exe,apktool.bat。apktool.jar 。将须要反编译的APK文件放到该文件夹下(老版本,新版本需看上边的安装方法),
2.打开命令窗口 (开始 > 运行,输入cmd,回车。)进入到apktool.bat的文件夹里。
输入:apktool d [-s] -f  C:\***.apk -o C:\***
(命令行解释:apktool d 要反编译的文件 输出文件夹)
特别注意:你要反编译的文件一定要放在C盘的根目录里,
3.打开 C:\***文件夹 就可以得到我们学院的各种资源了。

三.将反编译完的文件重新打包成apk

很简单,只要输入:
apktood b c:***文件夹(你编译出来文件夹)