方法
流程: test.apk -> smali文件 -> dex文件 -> jar文件 ->java 文件
将APK包解压为 smail文件
- 下载 apktool工具 apktool.jar
- 将 test.apk 和 apktool.jar放同一目录下,并执行以下命令
java -jar apktool.jar d -f xxx.apk -o xxx(解压目录)
Smali文件转为 dex文件
下载 smali工具 2.1.2版本,用 smali-2.1.2 因为高版本会解压失败
将smali.jar放入 xxx.apk的同目录,执行以下命令:
java -jar smali.jar apk的解压根目录/smali/ -o classes.dex
dex文件转为jar文件
- 下载 dex2jar工具压缩包,dex2jar压缩包, 并解压
- 将class.dex文件 拖进 dex-tools-v2.4目录里
- 进入dex-tools-v2.4目录中,执行以下命令,将dex文件转为jar文件
./d2j-dex2jar.sh ./classes.dex
解压 jar包为java文件即可
- 下载 JD-GUI工具,将其放到jar包同一目录下,JD-GUI, 执行以下命令:
java jar jd-gui.jar xxx.jar
这些就是反编译后的java文件,如果没有混淆的话,可以较好阅读,如果混淆了,那么阅读起来将会十分困难。