androidapk命令簽名
① Android開發對apk文件進行簽名
對apk簽名的步驟(適用於找回apk,對空包進行簽名)
1.復制java的jdk,bin目錄的絕對路徑(如果是默認安裝應該和我的路徑差不多)C:\Program Files\Java\jdk1.8.0_111\bin
2.進入cmd窗口,進入bin目錄(如果是新手,輸入cd C:\Program Files\Java\jdk1.8.0_111\bin)
輸入命令 jarsigner -verbose -keystore d:\project\360Wallpaper.keystore -signedjar d:\qihusign.apk d:\Qihuunsign.apk QIHU360
將簽名修改成自己簽名的路徑 ,生成的apk文件的名字路徑修改一下,再輸入需要簽名的apk文件路徑,最後輸入自己簽名的別名就可以
(新手,歡迎指正)
② Android Apk簽名工具
目前發布APK之前大家都會採用第三方加固方案來實現應用安全,鋒冊態
在Windows下 360有簽名工具可以直接簽名,騰訊樂固目前取消了簽名工具採用雲端加固,但是之後需要自己重簽名(因為加固之前會先去掉簽名)。
在Mac下沒有簽名工具,這就比較難受了。
一般來說,我們可以通過命令行來簽名Apk,打開命令行或者終端 輸入如下命令
但是這樣容易比較麻煩,還容易出錯,其實我們還可以使用腳本來完成自動簽名。
這里來簡單說明一下吧,我是採用python來實現的, Mac與Windows均可使用
本文python環境:python 3.8.2
sign.json 與signTool.py文件需要在同一文件夾下
其中sign.json 是簽名文件配置項(在工具中可以快捷選擇,銀源也可以不配置)
如下:
這樣就配置好了
signTool.py 是簽名工具,通過命姿侍令行或者終端運行該文件就行了
signTool.py文件如下:
運行如下:
配置好相關文件之後,點擊簽名就行了
好了,完成了一個簡單而又實用的工具
③ 如何對Android的APP進行簽名
1.簽名的步驟
a.創建key
b.使用步驟a中產生的key對apk簽名
2.具體操作
方法一: 命令行下對apk簽名(原理)
創建key,需要用到keytool.exe (位於jdk1.6.0_24jrein目錄下),使用產生的key對apk簽名用到的是jarsigner.exe (位於jdk1.6.0_24in目錄下),把上兩個軟體所在的目錄添加到環境變數path後,打開cmd輸入
D:>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
/*說明:-genkey 產生密鑰
-alias demo.keystore 別名 demo.keystore
-validity 40000 有效期限4000天
-keystore demo.keystore */
D:>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
/*說明:-verbose 輸出簽名的詳細信息
-keystore demo.keystore 密鑰庫位置
-signedjar demor_signed.apk demo.apk demo.keystore 正式簽名,三個參數中依次為簽名後產生的文件demo_signed,要簽名的文件demo.apk和密鑰庫demo.keystore.*/
注意事項:android工程的bin目錄下的demo.apk默認是已經使用debug用戶簽名的,所以不能使用上述步驟對此文件再次簽名。正確步驟應該是:在工程點擊右鍵->Anroid Tools-Export Unsigned Application Package導出的apk採用上述步驟簽名。
方法二:使用Eclipse導出帶簽名的apk
Eclipse直接能導出帶簽名的最終apk,非常方便,推薦使用,步驟如下:
第一步:導出。
第二步:創建密鑰庫keystore,輸入密鑰庫導出位置和密碼,記住密碼,下次Use existing keystore會用到。
第三步:填寫密鑰庫信息,填寫一些apk文件的密碼,使用期限和組織單位的信息。
第四步:生成帶簽名的apk文件,到此就結束了。
第五步:如果下次發布版本的時候,使用前面生成的keystore再簽名。
第六步:Next,Next,結束!
方法三:使用IntelliJ IDEA導出帶簽名的apk
方法步驟基本和Eclipse相同,大概操作路徑是:菜單Tools->Andrdoid->Export signed apk。