apktool的主要作用是資源文件獲取,可以提取出圖片文件和布局文件進行使用查看
使用:
1. 下載新版apktool 這里是傳送門
2. 解壓得到3個文件:aapt.exe,apktool.bat,apktool.jar
3. 將需要反編譯的APK文件放到該目錄下
4. 打開命令行界面(運行CMD) ,定位到apktool文件夾,輸入以下命令:apktool.bat d -f test.apk
反編譯慕課網(wǎng)app成功的例子:
命令行界面效果
文件夾目錄
自動生成文件效果
[注釋] test.apk即為要反編譯的應(yīng)用的文件名
[注意 1 ] 之前按網(wǎng)上的教程試了好幾次都沒有成功,報如下錯:
Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file1
原因是因為apktool.jar的版本太低,所以我去下載了比較新的apktool.jar來替換之前的apktool.jar,然后成功解決問題。上面提供的下載地址是集成的較新的apktool.jar。如果日后再報這種錯誤,可以繼續(xù)更新apktool.jar的版本。
[注意 2 ] 網(wǎng)上有很多說格式應(yīng)該為
apktool.bat d -f [apk文件 ] [輸出文件夾]
但是在新版中這樣寫貌似有時會報如下錯:
Input file< test.apk> was not found or was not readable 1
所以不如省略第二個參數(shù),省略后會自動新建和應(yīng)用重名的文件夾并將反編譯后的文件都輸出到該文件夾。
[注意 3 ]文件路徑中盡量不要包含中文,誰知道會出來什么鬼錯誤。。