uniapp之生成Android簽名證書(shū)并云打包發(fā)布

Android平臺(tái)打包發(fā)布apk應(yīng)用,需要使用數(shù)字證書(shū)(.keystore文件)進(jìn)行簽名,用于表明開(kāi)發(fā)者身份。需確保電腦上安裝了JRE(JRE環(huán)境),我們將使用JRE自帶的創(chuàng)建和管理數(shù)字證書(shū)的工具Keytool,并使用keytool命令生成簽名證書(shū)。

(1) 安裝JRE環(huán)境

  • 從Oracle官方下載:jre安裝包
  • 建議將JRE安裝路徑添加到系統(tǒng)環(huán)境變量(已配置可跳過(guò)):打開(kāi)命令行(cmd),輸入以下命令
d:  set PATH=%PATH%;"C:\Program Files\Java\jre1.8.0_201\bin"  

以安裝目錄為“C:\Program Files\Java\jre1.8.0_201”為例
第一行:切換工作目錄到D:路徑
第二行:將jre命令添加到臨時(shí)環(huán)境變量中

(2) 生成簽名證書(shū)(使用keytool -genkey命令)

keytool -genkey -alias mytest -keyalg RSA -keysize 2048 -validity 36500 -keystore mytest.keystore  

  • -alias mytest 表示證書(shū)的別名是mytest(別名建議使用英文字母和數(shù)字);
  • -keyalg RSA 表示采用的RSA算法;
  • -validity 36500 表示證書(shū)的有效期是36500 天;
  • -keystore mytest.keystore 表示生成的證書(shū),可以加上路徑(默認(rèn)在用戶主目錄下)。

回車后填寫(xiě)相關(guān)信息:

image

以上命令運(yùn)行完成后,就會(huì)生成證書(shū)文件mytest.keystore,可以使用以下命令查看證書(shū)信息:

keytool -list -v -keystore test.keystore  

image

備注:生成的證書(shū)文件在cmd工作目錄(用戶主目錄),如上述示例就在 “C:\Users\liy”目錄下。

(3) 云打包—使用自有(私用)證書(shū)配置打包信息

image
  • App包名:Android應(yīng)用包名,推薦使用反向域名風(fēng)格的字符串,如“com.domainname.appname”;
  • 證書(shū)別名:生成證書(shū)時(shí)使用-alias參數(shù)設(shè)置的證書(shū)別名;
  • 私鑰密碼:生成證書(shū)時(shí)使用的keystore密碼;
  • 證書(shū)文件:生成證書(shū)時(shí)使用-keystore參數(shù)設(shè)置的證書(shū)保存路徑。

備注:已經(jīng)打好的安裝包,允許開(kāi)發(fā)者在指定天內(nèi)下載指定次數(shù),超時(shí)或超次后服務(wù)器端會(huì)清除文件。

(4) 打包失敗常見(jiàn)原因

  • 如果使用自用證書(shū),很可能是證書(shū)配置錯(cuò)誤。
  • 如果使用DCloud證書(shū)仍然出錯(cuò),很可能是圖片錯(cuò)誤。所有圖片格式必須是標(biāo)準(zhǔn)png,且嚴(yán)格符合分辨率要求。使用其他圖片格式重命名為png會(huì)導(dǎo)致打包失敗!

其他錯(cuò)誤:請(qǐng)參考 云打包常見(jiàn)錯(cuò)誤排查指南

備注:2.6.11.20200409優(yōu)化 App 原生App云打包,Android證書(shū)支持選擇以key為后綴的證書(shū)。

</article>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容