包含 apktool、dex2jar、jdgui等三個(gè)工具。
apktool
dex2jar反編譯步驟:
1、把 class.dex 拷貝到 dex2jar.bat 所在目錄,直接拖動 class.dex 到 dex2jar.bat,生成 classes.dex.dex2jar.jar。
2、用 rar 解壓出 jar 文件中的 class 文件,然后 用jad 或 DJ Java Decompiler 反編譯工具將 .class 文件反編譯成 .java 文件
3、運(yùn)行 JD-GUI工具(綠色軟件),打開上面的 jar 文件,在File下有個(gè) Save JAR Source,它可以生成 src 源代碼。
Android用的Dalvik壓根不是標(biāo)準(zhǔn)的Java VM的Jar,而是DEX格式的,怎么辦?附件是dxe2jar和JD,兩個(gè)工具都是open source的,我已經(jīng)全部放在一個(gè)壓縮包了。
別著急,有辦法:
1. 假設(shè)你要反匯編的是app.apk,那么先改名成app.zip
2. 解壓
3. 在解壓出來的里面找到classes.dex,這個(gè)就是目標(biāo)的程序的二進(jìn)制文件
4. 用附件的dex2jar,在Windows命令行下運(yùn)行 dex2jar classes.dex
5. 生成classes.dex.dex2jar.jar,這個(gè)就是轉(zhuǎn)換后的JAR文件了
6. 執(zhí)行jd-gui,找到剛才生成的JAR文件,打開之。
7. 偷偷樂吧,90%以上的Java源代碼躍然眼前.
JD-GUI version 0.3.3,JD-Core version 0.6.0,Java反編譯工具,實(shí)現(xiàn)了eclipse的高亮著色功能,多文件標(biāo)簽瀏覽
此程序jd-gui.exe使用C++開發(fā),主要具有以下功能:
一、支持眾多Java編譯器的反編譯;
二、支持對整個(gè)Jar文件進(jìn)行反編譯,并本源代碼可直接點(diǎn)擊進(jìn)行相關(guān)代碼的跳轉(zhuǎn);