1. dex2jar 介绍
1.1. dex2jar 介绍
dex2jar 是 Android 中的一个反编译工具,它可以将 Android 程序安装包 Apk 文件中的 .dex 文件反编译成一个 .jar 文件,也可以将反编译后的 .jar 文件重新编译成 .dex 文件。反编译以后的 .jar 文件可以直接通过 JD-GUI 查看源代码(源码是混淆的)。
1.2. dex2jar 的安装(以 Windows 为例)
dex2jar 下载地址: https://sourceforge.net/projects/dex2jar/
-
将下载的 dex2jar-2.0.zip 压缩文件直接解压到任意文件夹下。
-
将 dex2jar-2.0 文件夹的路径配置到 PATH 环境变量中去。
-
在命令行窗口输入 d2j-dex2jar 命令按回车键后,打印如下图信息,表示安装成功。
![](https://img.haomeiwen.com/i11645222/bd831fb172b01fe2.png)
2. dex2jar 反编译
2.1. 将 Android Apk 文件后缀名 .apk 改成 .zip 文件并解压,获取到它的 .dex 文件(解压后有可能有多个 dex 文件),dex2jar 主要对该 .dex 文件反编译。
2.2. dex2jar 反编译命令
d2j-dex2jar <dexFilePath> -o <outputJarFilePath>
参数:
- dexFilePath: 要反编译的 .dex 文件的文件路径。
- outputJarFilePath: 反编译后输出的 .jar 文件的文件路径。
示例: d2j-dex2jar D:\d2j_dexfile\classes.dex -o D:\d2j_dexfile\classes_dex2jar.jar
![](https://img.haomeiwen.com/i11645222/fc1eafc580c671a1.png)
3. dex2jar 重编译
3.1. dex2jar 重编译命令
d2j-jar2dex <jarFilePath> -o <outputDexFilePath>
参数:
- jarFilePath: 要重新编译的 .jar 文件的文件路径。
- outputDexFilePath: 重编译后输出的 .dex 文件的文件路径。
注意: 命令开头是 d2j-jar2dex。
示例: d2j-jar2dex D:\d2j_dexfile\classes_dex2jar.jar -o D:\d2j_dexfile\classes_dex.dex
![](https://img.haomeiwen.com/i11645222/a75d16784d1868e2.png)
参考: https://blog.csdn.net/katrinawj/article/details/80016315
网友评论