天天看點

apktool使用方法總結

新的apktool的下載下傳位址已經移動到了github上,http://ibotpeaches.github.io/Apktool/,如果想研究這個工具的源代碼,也可以從https://github.com/iBotPeaches/Apktool下載下傳完整的源代碼來研究和學習。常用的用法如下:

反編譯APK檔案:

java -jar apktool.jar d target.apk

重新打包APK檔案(源檔案是上一步解壓出來的target目錄)

java -jar apktool.jar b target updated_target.apk

但是這樣重新打包出來的檔案是沒法在手機上安裝的,因為還沒有為程式重新簽名。(關于APK檔案的簽名可以參考我的另一篇博文:Android APK檔案簽名機制 )

要為程式重新簽名,就要使用另外的一個工具

為重新打包APK檔案添加簽名(一般是添加自己的簽名,而反編譯的程式的原始簽名檔案已經沒法得到了),可以使用signapk進行簽名,指令格式為:

java -jar signapk.jar updated_target.apk publickey.pem privatekey.pk8 updated_target.apk signed.apk

這個工具是android自帶的,可以在android的源碼中找到。也可以使用下載下傳apk-signer工具,這是一個圖形話的簽名工具。

java -jar apk-signer.jar

這會打開一個圖形界面,在界面上選擇好自己的公鑰,私鑰和目标apk,就可以對檔案進行簽名。