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 環(huán)境變量中去存崖。
在命令行窗口輸入 d2j-dex2jar 命令按回車鍵后,打印如下圖信息供搀,表示安裝成功。
輸入 d2j-dex2jar 命令.png
2. dex2jar 反編譯
2.1. 將 Android Apk 文件后綴名 .apk 改成 .zip 文件并解壓,獲取到它的 .dex 文件(解壓后有可能有多個 dex 文件)摄悯,dex2jar 主要對該 .dex 文件反編譯。
2.2. dex2jar 反編譯命令
d2j-dex2jar <dexFilePath> -o <outputJarFilePath>
參數(shù):
- dexFilePath: 要反編譯的 .dex 文件的文件路徑瘪阁。
- outputJarFilePath: 反編譯后輸出的 .jar 文件的文件路徑。
示例: d2j-dex2jar D:\d2j_dexfile\classes.dex -o D:\d2j_dexfile\classes_dex2jar.jar
dex 文件反編譯成 jar 文件.png
3. dex2jar 重編譯
3.1. dex2jar 重編譯命令
d2j-jar2dex <jarFilePath> -o <outputDexFilePath>
參數(shù):
- jarFilePath: 要重新編譯的 .jar 文件的文件路徑泻云。
- outputDexFilePath: 重編譯后輸出的 .dex 文件的文件路徑卸夕。
注意: 命令開頭是 d2j-jar2dex。
示例: d2j-jar2dex D:\d2j_dexfile\classes_dex2jar.jar -o D:\d2j_dexfile\classes_dex.dex
jar 文件重編譯成 dex 文件.png
參考: https://blog.csdn.net/katrinawj/article/details/80016315