工具介紹
反編譯APP主要用到的工具為apktool、dex2jar和jd-gui可視化工具司蔬。
apktool(如果想看反編譯后的代碼,請(qǐng)?zhí)^這個(gè)工具)
apktool可以將apk中的資源文件反編譯出來姨蝴。但是如果想看build后的代碼,使用apktool只能看到smali格式的代碼肺缕,并不是你想要的java代碼左医。
apktool 環(huán)境搭建
官網(wǎng):https://ibotpeaches.github.io/Apktool/
下面教程來自官網(wǎng)授帕。
- 下載 Mac apktool (右鍵保存為
apktool
) - 下載 apktool-2 (點(diǎn)擊查看最新版)
- 將下載后的文件改名為
apktool.jar
- 將 (
apktool.jar
&apktool
) 移到目錄/usr/local/bin
下(需要root權(quán)限) - 使用 (
chmod +x
) 確保(apktool.jar
&apktool
) 都可執(zhí)行。 - 然后就可以在Terminal中使用apktool命令啦8∩摇跛十!這里po一個(gè)命令格式(apktool d 文件名 -o 輸出文件)
dex2jar
dex2jar可以將apk解壓出來的dex文件轉(zhuǎn)換成jar包,然后使用jd-gui可視化工具查看源碼秕硝。
- 點(diǎn)擊 下載芥映,小心別下載成廣告中的軟件啦。
- 下載完成后远豺,解壓奈偏。
- 在解壓上一級(jí)文件夾,
chmod -R 777 dex2jar
授予權(quán)限 - 將dex文件放入dex2jar文件夾
- Terminal使用
sh d2j-dex2jar.sh classes.dex
命令將dex文件反編譯成jar包躯护。最后使用jd-gui查看即可惊来。
jd-gui
jd-gui是用來查看jar包中文件代碼的一款可視化工具。
- Mac用戶請(qǐng)點(diǎn)擊 此處
- 解壓完成后棺滞,直接將通過dex2jar生成的jar拖入jd-gui即可查看該jar包中文件的代碼裁蚁。