Android平臺(tái)打包發(fā)布apk應(yīng)用闻牡,需要使用數(shù)字證書(.keystore文件)進(jìn)行簽名盗似,用于表明開發(fā)者身份酱塔。需確保電腦上安裝了JRE(JRE環(huán)境)悔政,我們將使用JRE自帶的創(chuàng)建和管理數(shù)字證書的工具Keytool,并使用keytool命令生成簽名證書延旧。
(1) 安裝JRE環(huán)境
- 從Oracle官方下載:jre安裝包
- 建議將JRE安裝路徑添加到系統(tǒng)環(huán)境變量(已配置可跳過):打開命令行(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) 生成簽名證書(使用keytool -genkey命令)
keytool -genkey -alias mytest -keyalg RSA -keysize 2048 -validity 36500 -keystore mytest.keystore
- -alias mytest 表示證書的別名是mytest(別名建議使用英文字母和數(shù)字);
- -keyalg RSA 表示采用的RSA算法迁沫;
- -validity 36500 表示證書的有效期是36500 天芦瘾;
- -keystore mytest.keystore 表示生成的證書,可以加上路徑(默認(rèn)在用戶主目錄下)集畅。
回車后填寫相關(guān)信息:
以上命令運(yùn)行完成后近弟,就會(huì)生成證書文件mytest.keystore,可以使用以下命令查看證書信息:
keytool -list -v -keystore test.keystore
備注
:生成的證書文件在cmd工作目錄(用戶主目錄)挺智,如上述示例就在 “C:\Users\liy”目錄下祷愉。
(3) 云打包—使用自有(私用)證書配置打包信息
- App包名:Android應(yīng)用包名,推薦使用反向域名風(fēng)格的字符串赦颇,如“com.domainname.appname”二鳄;
- 證書別名:生成證書時(shí)使用-alias參數(shù)設(shè)置的證書別名;
- 私鑰密碼:生成證書時(shí)使用的keystore密碼媒怯;
- 證書文件:生成證書時(shí)使用-keystore參數(shù)設(shè)置的證書保存路徑订讼。
備注:已經(jīng)打好的安裝包,允許開發(fā)者在指定天內(nèi)下載指定次數(shù)扇苞,超時(shí)或超次后服務(wù)器端會(huì)清除文件欺殿。
(4) 打包失敗常見原因
- 如果使用自用證書,很可能是證書配置錯(cuò)誤鳖敷。
- 如果使用DCloud證書仍然出錯(cuò)脖苏,很可能是圖片錯(cuò)誤。所有圖片格式必須是
標(biāo)準(zhǔn)png
定踱,且嚴(yán)格符合分辨率要求棍潘。使用其他圖片格式重命名為png會(huì)導(dǎo)致打包失敗!
其他錯(cuò)誤:請(qǐng)參考 云打包常見錯(cuò)誤排查指南
備注
:2.6.11.20200409優(yōu)化 App 原生App云打包蜒谤,Android證書支持選擇以key為后綴的證書山宾。
。