Android.apk - 解包、打包、簽名(apktool、jarsigner、keystore)

目錄

-查看apk信息(自行修改后的apktool)
-解apk包(apktool)
-反編譯打包成apk(apktool)
-制作簽名文件keystore(Mac下制作)
-apk簽名(jarsigner)

查看apk信息(自行修改后的apktool)

#######下載apk相關文件,放到指定的目錄下,如已經(jīng)存在則替換。
apktool替換文件下載

apktool-location.png

#######apktool的使用

apktool.png

apktool是我們對apk包進行反編譯最常見的工具。圖中紅框內的命令是我和同事對apktool進行改造后新增的方法命令。

查詢命令格式:

apktool info apk包路徑

info后帶有可選參數(shù),可查詢具體指明的某個屬性

查詢事例


apktool-query.png

修改命令格式:

cd 到修改apk包后新包需要存放的地方(也就是新包會保存在當前目錄)
apktool m 修改項  要修改的內容 apk包 

修改事例:

apktool-modify.png

回車之后:

apktool-modify-result.png

簽名命令格式:

apktool sign apk包

簽名使用的keystore是我們自己生成的,已經(jīng)打進apktool.jar文件中。

簽名事例:

apktool-sign.png

解apk包(apktool)

#解壓 apk包
apktool d -f Android.apk(絕對路徑)

另外一種方法就是,直接修改apk包后綴為.zip,然后雙擊加壓,若失敗,則可在終端unzip強制解包。

反編譯打包成apk(apktool)

#打包 apk包,把解壓的apk包做成一個apk
apktool b file(解壓后的文件夾)

制作簽名文件keystore(Mac下制作)

keytool工具的詳細介紹

終端命令截圖:

keystore.png
keystore-result.png

apk簽名(jarsigner)

簽名使用jarsigner

$1:keystore文件的絕對路徑
$2:keystore的別名
$3:keystore文件的密碼
$4:新的apk包名
$5:要簽名的apk包路徑

jarsigner -keystore $1 -storepass $3 -signedjar $4 $5 $2 -digestalg SHA1 -sigalg

//簽名例子
jarsigner -keystore ~/appgame.keystore -storepass 123456 -signedjar  fastened_uc_new.apk QMDLH.apk android.keystore -digestalg SHA1 -sigalg MD5withRSA
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 記錄一下解壓一個apk,替換未加密的資源文件,然后再打包成apk,并簽名的過程。 操作環(huán)境與工具 環(huán)境: Wind...
    qufl閱讀 4,188評論 2 50
  • 最近根據(jù)別人的博客看了下如何對應用進行二次打包。之前沒有真正實踐過,今天就來自己動手實現(xiàn)一下。聲明,本篇博客內容也...
    自己找知己閱讀 23,329評論 1 14
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,013評論 25 709
  • 公司給員工的福利,買了一年的心理咨詢服務??梢灶A約和心理咨詢師電話咨詢。 今天下午一個人逛街,百無聊賴!想想一個女...
    Molly郭兒閱讀 323評論 0 0
  • 當我試圖用自己的話表述清楚“叢林類比”的時候,我發(fā)現(xiàn)還是有很大的難度的。 比如說,我為什么要講叢林里比呢?我怎么引...
    龍航007閱讀 581評論 2 4

友情鏈接更多精彩內容