apktool的下載配置及使用

weixin_34353714發表於2018-01-25

apktool的下載配置

下載地址

687475-1afe750e2342fda7.png
apktool網站
  • 下載指令碼,下載指令碼,儲存為apktool
  • 下載最新版apktool.jar
  • 將下載的jar包重新命名為apktool.jar
  • 配置環境變數
    • 兩種方案任選一種

      1. 將apktool和apktool.jar移到/usr/local/bin目錄
      2. 在~/.bash_profile檔案下配置,首先新建apktool資料夾,將兩個檔案放到這個檔案下(使用zsh的需在.oh-my-zsh目錄,或.zshrc配置),開啟終端,輸入一下命令:
      vim ~/.bash_profile
      export PATH=前面路徑/apktool:$PATH
      source ~/.bash_profile
      
      1. 將兩個檔案許可權設定為可執行sudo chmod a+x file

以上就配置好了apktool

在終端輸入apktool,顯示版本資訊及使用表示安裝完成

使用apktool實現反編譯和回編譯

以test.apk為例

  • 反編譯
  • 終端輸入 apktool d test.apk -o test後會生成一個test資料夾,裡面我們可以看到可讀的AndroidManifest.xml檔案以及資原始檔和smali code程式碼
687475-c5eaa3b0218ae44b.png
反編譯

smali code程式碼對應的就是java程式碼,可讀性已經非常高,這裡可以對smali檔案做直接修改,後面會介紹一些看到java程式碼的工具,在這配合使用,完成可以實現對程式碼的修改

  • 回編譯
  • 終端輸入 apktool b test -o new_test.apk即可生成new_test.apk新的apk

重簽名

我們對apk實現回編譯後,是沒法直接使用的,需要重新簽名,我們用壓縮軟體對 new_test.apk 直接解壓縮,將“META-INF”檔案刪除,然後壓縮回去,用簽名工具進行簽名(工具自行查詢),然後壓縮回去,改字尾為.apk,就可正常安裝使用了

apktool打包 最新版自行下載

相關文章