怎麼使用命令對未簽名的包進行簽名

轉自:http://jingyan.baidu.com/article/3c48dd3491d91fe10be358f4.html

在某些場合下,沒有外在工具,需要對一個未簽名的APK包進行簽名,那就可以通過命令來對Android應用進行手動簽名。

工具/原料

  • JDK+eclipse

方法/步驟

  1. 菜單菜單鍵,鍵入cmd命令進入命令模式。如圖:

    怎麼使用命令對APK包進行簽名
  2. 命令模式中,進入JDK的安裝目錄的Bin子目錄下。(我的JDK安裝在E盤,所以先進入E盤,然後再進入JDK安裝目錄)

    怎麼使用命令對APK包進行簽名
    怎麼使用命令對APK包進行簽名
    怎麼使用命令對APK包進行簽名
  3. 通過keytool.exe 工具來創建keystore庫.

    輸入以下命令:

    keytool -genkeypair -alias - mydemo.keystore -keyalg RSA -validity  100

    -keystore mydemo.keystore

    命令說明如下:

     -genkeypair  :指定生成數字證實

    -alias :指定生成數字證書的別名

    -keyalg:指定生成數字證書的算法  這裏如RSA算法

    -validity:指定生成數字證書的有效期

    -keystore :指定生成數字證書的存儲路徑。  (這裏默認在keytool.exe 目錄下)

    回車 出現如圖交互式界面   輸入數字證書費密碼 作者  公司等詳細信息

    如圖 :

    怎麼使用命令對APK包進行簽名
  4. 完成後,keystore庫創建完成,你可以在指定的保存目錄下找到 如圖:

    怎麼使用命令對APK包進行簽名
  5. 使用jarsigner命令對未簽名的APK安裝包進行簽名。使用JDK安裝目錄下bin子目錄下的jarsigner.exe工具來進行簽名。

    然後把未簽名的apk也拷貝到此目錄。如圖:

    怎麼使用命令對APK包進行簽名
    怎麼使用命令對APK包進行簽名
  6. 使用如下命令進行簽名:

    jarsigner -verbose -keystore mydemo.keystore -signedjar

    -Note.apk Notes.apk mydemo.keystore 

    以上命令的說明:

    -verbose:指定生成詳細輸出

    -keystore:指定數字證書存儲路徑

    -signedjar:該選項的三個參數爲  簽名後的apk包  未簽名的apk包  數字證書別名

    注意有效期哦。

    怎麼使用命令對APK包進行簽名
    怎麼使用命令對APK包進行簽名
  7. 簽名後的apk  如圖:

    怎麼使用命令對APK包進行簽名
  8. sdk目錄下tool目錄下使用zipalign.exe工具優化APK安裝包。

    將已經簽名的apk包放在zipalign.exe同目錄下   如圖:

    怎麼使用命令對APK包進行簽名
  9. 使用如下命令:

    zipalign -f -v 4 -Note.apk -Notes.apk

    命令說明:

    -f  :指定強制覆蓋已有文件

    -v  指定生成詳細輸出

    4:指定檔案整理基於的字節數  一般是4  也有基於32位的。

    -Note.apk  :優化前APK

    -Notes.apk   優化後的APK

    怎麼使用命令對APK包進行簽名
  10. 運行命令後,在該目錄下生成一個-Notes.apk,這個就是優化過的APK安裝包

    ,該安裝包可以對外發布。

    如圖:

    如果能對你有幫助,希望你能收藏和支持。

    怎麼使用命令對APK包進行簽名
    怎麼使用命令對APK包進行簽名
    END

注意事項

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章