反編譯Android APK

使用到的工具:
Apktool:用來獲取圖片、xml等資源文件
dex2jar:把dex文件轉(zhuǎn)換成jar包
JD-GUI:反編譯jar包,獲取源代碼
JADX-GUI:方便的反編譯工具,一步到位直接反編譯apk

第一種方式. 使用dex2jar、JD-GUI和apktool

第一步. 反編譯獲取源代碼:

  1. 解壓你要反編譯的apk文件(apk文件其實(shí)是個壓縮文件)。
  2. 進(jìn)入apk解壓后的目錄,拷貝classes.dex文件,粘貼到dex2jar目錄。
  3. 打開cmd,把路徑切換到dex2jar目錄,運(yùn)行命令: d2j-dex2jar classes.dex ,成功后會在dex2jar目錄生成一個classes-dex2jar.jar文件。
  4. 打開JD-GUI,然后把剛才生成的classes-dex2jar.jar文件拖進(jìn)去就可以查看源代碼了。

第二步.獲取圖片、xml等資源文件:

apktool工具是一個jar包,不需要解壓。
打開cmd,進(jìn)入apktool工具根目錄,運(yùn)行命令: java -jar apktool_2.0.2.jar d -f csdn.apk -o cccc,
其中cccc是破解后的文件輸出目錄,可以自定義,不需要自己創(chuàng)建。
完成后會發(fā)現(xiàn)apktool工具根目錄下多了一個cccc文件夾,里面的圖標(biāo)、xml文件等就可以直接使用了。




如果你覺得上面這些步驟太麻煩的話,這里有一個集成了以上幾種工具的一步到位反編譯apk工具onekey-decompile-apk。
下載地址:https://github.com/ufologist/onekey-decompile-apk,使用方法里面有詳細(xì)介紹。

第二種方式. 使用jadx-gui

jadx-gui是一個圖形話反編譯工具,可反編譯apk文件,使用非常簡便 。能獲取源碼,獲取xml文件,缺點(diǎn)是不能獲取圖片文件。

使用方法:下載了之后解壓,進(jìn)入解壓后的目錄,運(yùn)行bin文件夾里面的jadx-gui.bat,然后選擇你要反編譯的apk所在的位置,或者把你的apk文件直接拖到j(luò)adx界面,ok,這就反編譯成功了,就是這么簡單粗暴。

jadx-gui和jd-gui反編譯后的源碼有一點(diǎn)不一樣:

  1. 有些變量jd-gui會有初始化值;
  2. 有些jd-gui會反編譯出錯,而jadx-gui能成功,所以根據(jù)情況混合使用吧。



以上提到的反編譯工具下載地址:

github上一個反編譯工具集合的帖子:
https://github.com/Juude/droidReverse

onekey-decompile-apk:
https://github.com/ufologist/onekey-decompile-apk

JADX-GUI:
http://sourceforge.net/projects/jadx

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容