APK反編譯、重打包、簽名之apktool實現
阿新 • • 發佈:2018-12-11
1.下載apktool
https://download.csdn.net/download/qq_25844803/10842372
(點一下,爽一年,我是渣渣輝)
2.準備環境
將解壓出來的apktool.bat和apktool.jar放到同一個資料夾下(如:C:\apktool)
將需要反編譯的APK也放在該資料夾下
3.進入CMD
開啟cmd,進入到apktool所在資料夾
4.反編譯APK
反編譯命令:
apktool d TestPrint.APK
效果如圖所示:
進入apktool所在的資料夾,可見多出一個資料夾TestPrint.APK.out,如圖所示
至此,反編譯成功
5.修改檔案
根據需求修改TestPrint.APK.out資料夾裡的內容。
修改完畢後,為方便第6步重打包,將原來的TestPrint.APK刪除,
將TestPrint.APK.out資料夾重新命名為TestPrint。
6.重新打包成為APK
重打包命令:
apktool b TestPrint
效果如圖所示:
重打包完畢後,開啟TestPrint\dist資料夾,就可以看到新的APK
為方便後續操作,將此APK複製貼上到apktool資料夾下
7.生成keystore
Keystore生成命令:
keytool -genkey - alias abc.keystore -keyalg RSA -validity 20000 -keystore abc.keystore
如果出現亂碼,如下圖。
此時,可退出cmd,再重新進入cmd,定位到apktool資料夾,生成keysotre。
接下來按照自己情況輸入相關資訊
此時,apktool資料夾下就會看到一個abc.keystore檔案
8.簽名
簽名命令:
jarsigner -verbose -keystore abc.keystore -signedjar TestPrint_1.apk TestPrint.APK abc.keystore
如果出現下圖所示的錯誤,請檢查環境變數中的JDK(or JAVA_HOME)是否配置正確
正常情況,應該是以下情況,輸入之前填寫的密碼
輸入正確後,開始簽名
此時,簽名完畢,apktool資料夾下出現新的APK–>TestPrint_1.apk
至此,apk反編譯,修改檔案,重打包,簽名全部完成。可以將此apk安裝到手機檢視結果。