在某些場合下,沒有外在工具,須要對一個未簽名的APK包進行簽名,那就能夠經過命令來對Android應用進行手動簽名。
JDK+eclipse
1
菜單菜單鍵,鍵入cmd命令進入命令模式。如圖:
2
命令模式中,進入JDK的安裝目錄的Bin子目錄下。(個人JDK安裝在E盤,因此先進入E盤,而後再進入JDK安裝目錄)
3
經過keytool.exe 工具來建立keystore庫.
輸入如下命令:
keytool -genkeypair -alias - mydemo.keystore -keyalg RSA -validity 100
-keystore mydemo.keystore
命令說明以下:
-genkeypair :指定生成數字證明
-alias :指定生成數字證書的別名
-keyalg:指定生成數字證書的算法 這裏如RSA算法
-validity:指定生成數字證書的有效期
-keystore :指定生成數字證書的存儲路徑。 (這裏默認在keytool.exe 目錄下)
回車 出現如圖交互式界面 輸入數字證書費密碼 做者 公司等詳細信息
如圖 :
4
完成後,keystore庫建立完成,你能夠在指定的保存目錄下找到 如圖:
5
使用jarsigner命令對未簽名的APK安裝包進行簽名。使用JDK安裝目錄下bin子目錄下的jarsigner.exe工具來進行簽名。
而後把未簽名的apk也拷貝到此目錄。如圖:
6
使用以下命令進行簽名:
jarsigner -verbose -keystore mydemo.keystore -signedjar
-Note.apk Notes.apk mydemo.keystore
以上命令的說明:
-verbose:指定生成詳細輸出
-keystore:指定數字證書存儲路徑
-signedjar:該選項的三個參數爲 簽名後的apk包 未簽名的apk包 數字證書別名
注意有效期哦。
7
簽名後的apk 如圖:
8
sdk目錄下tool目錄下使用zipalign.exe工具優化APK安裝包。
將已經簽名的apk包放在zipalign.exe同目錄下 如圖:
9
使用以下命令:
zipalign -f -v 4 -Note.apk -Notes.apk
命令說明:
-f :指定強制覆蓋已有文件
-v 指定生成詳細輸出
4:指定檔案整理基於的字節數 通常是4 也有基於32位的。
-Note.apk :優化前APK
-Notes.apk 優化後的APK
10
運行命令後,在該目錄下生成一個-Notes.apk,這個就是優化過的APK安裝包
,該安裝包能夠對外發布。
如圖:
若是能對你有幫助,但願你能收藏和支持。