準(zhǔn)備工作
-
下載apktool根據(jù)提示安裝
- 復(fù)制 wrapper script 中的代碼,另存為本地 "apktool" 文件,無后綴
- 下載 apktoolxxx.xxxx.jar,修改名字為 "apktool.jar"
-
將 "apktool" 和 "apktool.jar"拖進(jìn)"/usr/local/bin"目錄下,或命令行之行:
$ sudo -i cp ~/Desktop/apktool ~/../../usr/local/bin
$ sudo -i cp ~/Desktop/apktool.jar ~/../../usr/local/bin
添加它倆權(quán)限:
$ sudo chmod +x apktool
$ sudo chmod +x apktool.jar-
運(yùn)行,查看是否安裝成功
apktool -v
- 下載 dex2jar,解壓,修改權(quán)限:
chmod +x /home/.../d2j-dex2jar.sh /home/.../d2j_invoke.sh
開始反編譯
-
準(zhǔn)備.dex文件
- 新建 apk 文件夾,放入 apk 文件(文件名不可包含中文,例子是maple.apk),cd進(jìn)目錄執(zhí)行:
apktool d maple.apk
在apk文件夾下生成xxx文件夾,內(nèi)部包含AndroidManifest.xml, assets, build, lib, original, res等文件
- 新建 apk 文件夾,放入 apk 文件(文件名不可包含中文,例子是maple.apk),cd進(jìn)目錄執(zhí)行:
-
反編譯.dex
-
將.apk后綴改成.rar,解壓,拿到classes.dex文件,(多個dex文件則多次執(zhí)行第二步)
-
cd進(jìn)dex2jar文件夾,執(zhí)行:
./d2j-dex2jar.sh /Users/fred/Desktop/apk/classes.dex
在dex2jar文件夾下生成 maple.jar
得到結(jié)果
-
-
查看jar文件
-
用JD_GUI,打開maple.jar文件,查看java代碼
-
當(dāng)出現(xiàn)//INTERNAL ERROR時,下載Luyten 再打開即可
-
用JD_GUI,打開maple.jar文件,查看java代碼
參考