uni-app 安卓打包自有证书失败,提示证书无效

第一步:下载安装jre并配置环境变量

Android平台打包发布apk应用,需要使用数字证书(.keystore文件)进行签名,用于表明开发者身份。

可以使用JRE环境中的keytool命令生成。去Oracle官方下载并安装jdk,jdk里包含jre环境。

Java Downloads | Oraclehttps://www.oracle.com/technetwork/java/javase/downloads/index.html下载安装jdk后配置环境变量(环境变量配置可参考这篇文章),jdk11后jre不显示出来了,可以在jdk安装目录下输入下面的命令

bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre

第二步: 使用keytool -genkey命令生成证书

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

第三步:查看证书

keytool -list -v -keystore test.keystor

uni-app 安卓打包自有证书失败,提示证书无效_第1张图片

 第四步:打包

将证书别名 私钥 证书文件 分别填入uni-app对应位置

uni-app 安卓打包自有证书失败,提示证书无效_第2张图片

打包后报证书无效, 试了网上很多方法一直都报证书无效,最后发现hbuilder官方的证书秘钥库类型是JKS,而之前用命令生成的证书秘钥库默认类型是 PKCS12,转换类型后打包成功!

keytool -importkeystore -srckeystore ./test.keystore -destkeystore ./test.keystore -deststoretype JKS

转换后可再次查看证书信息,秘钥库类型已经变成JKS了

注:转换秘钥库类型出现如下提示可能是因为秘钥设置得太简单了,增加密码复杂度或忽略提示都行,目前不影响使用

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool ****" 迁移到行业标准格式 PKCS12。

uni-app 安卓打包自有证书失败,提示证书无效_第3张图片

你可能感兴趣的:(前端)