手把手,教你怎樣用命令行給apk簽名


        最近因為項目上線,要配合運營的童鞋們上傳各渠道apk,其中,搜狗的渠道因為遷移問題,需要給一個他們提供的空的apk簽名,然后用公司的簽名文件進行簽名

沒辦法,只能手動給apk簽名,網上搜索一片均不太完善,特總結一下成功的經驗供各位童鞋參考!
 
         首先,相信各位童鞋都已配好java環境:
  1.         將要簽名的apk,簽名文件放到同一個文件夾,我這里需要簽名的apk為unsign.apk,簽名文件為sign.apk
  2.         cd到此目錄下,輸入
    jarsigner -verbose -keystore sign -signedjar sign.apk unsign.apk sign
    解釋一下:
    jarsigner 簽名命令 java/bin目錄下的一個簽名工具
              -verbose            輸出簽名的詳細信息 
           -keystore            密鑰庫位置  后面跟簽名文件路徑,因為現在在同一個文件夾下,只需要輸入文件名稱即可
           -signedjar sign.apk    unsign.apk    sign    正式簽名,三個參數中依次為簽名后產生的文件 sign.apk   ,要簽名的文件 unsign.apk 和簽名文件的別名key alias
     
  3. 根據各位童鞋的具體情況替換具體文件名或路徑,執行以下,有大部分人可能會碰到一下錯誤
    1. jarsigner:找不到VCinemaKey.keystore的證書鏈。VCinemaKey.keystore必須引用包
     
    各方百度,說的都不太對,其實,問題主要出現在這里
    jarsigner -verbose -keystore sign -signedjar sign.apk unsign.apk sign
    此時的簽名文件為 sign,alias為sign,並沒有什么問題,可是大部分人,可能簽名文件名為  xxx.keystore或者其他名稱
    問題就在這里,使用手動簽名,必須保證簽名文件名稱和別名alias一致,這也是其他地方含糊不清的地方
  4. 查看alias,利用studio簽名 導入簽名文件后可以看到簽名的別名
  5. 修改簽名文件的名稱和別名一致,然后重新運行上述命令,簽名成功,大功告成!!
         
         






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM