APP上傳應用商店加固后打包


在cmd進入jdk的bin目錄,把keystore文件和apk安裝包放到bin目錄下,然后執行以下命令,需要管理員權限:

 

jarsgner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore [keystorePath] -singnedjar [apkOut] [apkln] [alias]

 

例如 

 

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore androids.keystore -signedjar mzbl36000.apk mzbl3600.apk 00000000000

 

 

jarsgner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore [keystorePath] -singnedjar [apkOut] [apkln] [alias]


ps:紅色英文不填的話,默認簽名算法采用“SHA256withRSA”,所以會導致360提示:”您的應用簽名算法采用“SHA256withRSA”,在部分4.2一下安卓版本的手機上不能安裝

 

 

 

 

 

 

詳細

Android版本加固后簽名 
在上傳應用的時候,應用加固之后會破壞原有的簽名,需要重新簽名才能發布到應用市場中,如下圖: 
這里寫圖片描述

加固后的簽名步驟如下: 
1:簽名之前需要Java的JDK環境以及被破壞簽名的apk安裝包,以及將需要用來簽名的keystore文件。 
2:將未簽名的apk和keystore文件拷貝到JDK安裝目錄下bin子目錄下,通過bin目錄下的jarsigner命令對未簽名的apk安裝包進行簽名。 
通過cmd進入命令行模式: 
1、 Windows+R 
這里寫圖片描述 
2、 輸入如下命令進行簽名: 
jarsigner -verbose –keystore 指定數字證書存儲路徑 
-signedjar 簽名后的apk包未簽名的 apk包_legu.apk 數字證書別名 
如: 
jarsigner -verbose -keystore mzjsz.keystore -signedjar zjsz_android_release-release.apk zjsz_android_release-release.apk zjsz 
以上命令的說明: 
-verbose:指定生成詳細輸出 
-keystore:指定數字證書存儲路徑 
-signedjar:該選項的三個參數為 
簽名后的apk包 
未簽名的apk包 
數字證書別名(后面有獲取方式) 
注意數字證書別名有效期。 
注意:簽名后的apk包和未簽名的apk包的包名盡量不要相同,否則將會將之前的版本直接覆蓋掉。 
輸入正確指令之后會要求輸入密鑰庫的密碼即keystore的File Password,輸入的過程中不會有任何的顯示。輸入完成按Enter鍵: 
這里寫圖片描述 
接着輸入密鑰口令即keystore的Key Password,完成按Enter 
這里寫圖片描述 
當出現下圖即表示成功 
這里寫圖片描述 
在bin目錄下生成一個mzjsz_android.apk文件。 
這里寫圖片描述

獲取keystore數字證書別名: 
在簽名的過程中會需要獲取keystore數字證書別名,具體的操作如下: 
通過命令定位在JDK的bin目錄下,或者在bin文件夾中按住shift+右鍵,在彈出菜單項中選擇在此處打開命令窗口。 
輸入指令keytool -list -v -keystore keystore文件名 –storepass keystore文件密碼 
例如:keytool -list -v -keystore keystoreName -storepass keystorePassword 
出現下圖就表示獲取成功 
這里寫圖片描述


免責聲明!

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



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