如何将Android DEX(VM字节码)文件反编译为相应的Java源代码?
It’s easy
获取以下工具:
1)dex2jar将dex文件转换为jar文件
2)jd-gui查看jar中的java文件
由于dex2jar进行了一些优化,因此源代码具有很高的可读性。
Procedure::
这是有关如何反编译的过程:
步骤1:
将test_apk-debug.apk中的classes.dex转换为test_apk-debug_dex2jar.jar
test_apk-debug.apk
classes.dex
test_apk-debug_dex2jar.jar
d2j-dex2jar.sh -f -o output_jar.jar apk_to_decompile.apk d2j-dex2jar.sh -f -o output_jar.jar dex_to_decompile.dex
注1:在Windows计算机上的所有的.sh脚本改为.bat脚本
.sh
注意2:在linux / mac上不要忘记sh或bash。完整命令应为:
linux / mac
sh
bash
sh d2j-dex2jar.sh -f -o output_jar.jar apk_to_decompile.apk
注意3:此外,请记住将执行权限添加到dex2jar-X.X目录,例如sudo chmod -R +x dex2jar-2.0
dex2jar-X.X
sudo chmod -R +x dex2jar-2.0
dex2jar文档
第2步:
在JD-GUI中打开jar