小编典典

将 DEX 反编译为 Java 源代码

all

如何将 Android DEX(VM 字节码)文件反编译成对应的 Java 源代码?


阅读 260

收藏
2022-03-02

共1个答案

小编典典

这很容易

获取这些工具:

  1. dex2jar将 dex 文件转换为 jar 文件

  2. jd-gui查看jar中的java文件

由于 dex2jar 做了一些优化,源代码可读性很强。

程序:

以下是如何反编译的过程:

第1步:

将 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脚本

注意 2: 在 linux/mac 上不要忘记shor 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 文档

第2步:

在 JD-GUI 中打开 jar

反编译的源码

2022-03-02