ausheng

原创:Hbuilderx打包生成证书文件,以及其他问题解决

之前在HBuilderX打包apk安卓应用时都是用的公共测试证书

这样打出来的包在安装时可能会提示有病毒风险,并且在安装了公共测试证书生成的安装应用之后再去打开支付宝部分机型甚至会被支付宝提醒 有病毒存在

虽然本人是个PHP程序员,但是对于未知领域还是充满好奇,于是开始研究安装应用知识

注意:本人环境:MAC ,但是不影响打包之后的证书文件可用性



前边的都是废话😂

首先参考文档,按照这个步骤基本上没有问题,直到最后一步

百度吧,亦是 五花八门 ,亦是 千篇一律

下边就按照我的来吧

1、依然是首先下载 java jdk ,但是注意下载版本(往下边翻一下,要下载jdk版本 8!!!!)

不行直接点这个链接下载,就怕有人不会找

下载完成之后傻瓜式安装,最后安装路径为:

/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk



2、将java jdk加入系统变量

mac的同学按照下边做,windows 的同学按照文档

open -e .bash_profile //打开配置文件

//然后在文件末尾加入
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home
//然后立即刷新.bash_profile文件使其立即生效
source ~/.bash_profile

//查看是否成功加入环境变量
java -version  
//输出以下信息-成功                     
//java version "1.8.0_301"
//Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
//Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)





3、然后开始编译及生成证书文件

//进入用户目录
cd ~
//编译生成证书,注意大写字母 YOURAPP 需要换成你的项目名称 
keytool -genkey -alias YOURAPP.keystore -keyalg RSA -sigalg SHA1WithRSA -validity 20000 -keysize 1024 -keystore YOURAPP.keystore -v

回车之后开始填写信息

Enter keystore password:  //输入证书文件密码,输入完成回车  
Re-enter new password:   //再次输入证书文件密码,输入完成回车  
What is your first and last name?  
  [Unknown]:  //输入名字和姓氏,输入完成回车  
What is the name of your organizational unit?  
  [Unknown]:  //输入组织单位名称,输入完成回车  
What is the name of your organization?  
  [Unknown]:  //输入组织名称,输入完成回车  
What is the name of your City or Locality?  
  [Unknown]:  //输入城市或区域名称,输入完成回车  
What is the name of your State or Province?  
  [Unknown]:  //输入省/市/自治区名称,输入完成回车  
What is the two-letter country code for this unit?  
  [Unknown]:  //输入国家/地区代号(两个字母),中国为CN,输入完成回车  
Is CN=XX, OU=XX, O=XX, L=XX, ST=XX, C=XX correct?  
  [no]:  //确认上面输入的内容是否正确,输入y,回车  

Enter key password for <testalias>  
        (RETURN if same as keystore password):  //确认证书密码与证书文件密码一样(HBuilder|HBuilderX要求这两个密码一致),直接回车就可以

填写完成之后输出一下信息为正常:

正在为以下对象生成 1,024 位RSA密钥对和自签名证书 (SHA1withRSA) (有效期为 20,000 天):
	 CN=lu, OU=watt, O=wattgo, L=NYC, ST=NYC, C=EN/USA
输入 <YOURAPP.keystore> 的密钥口令
	(如果和密钥库口令相同, 按回车):  
[正在存储YOURAPP.keystore]

Warning:   //这个警告不需要管他,继续执行下面的命令
生成的证书 使用的 SHA1withRSA 签名算法被视为存在安全风险。此算法将在未来的更新中被禁用。
生成的证书 使用的 1024 位 RSA 密钥 被视为存在安全风险。此密钥大小将在未来的更新中被禁用。
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore watt.keystore -destkeystore watt.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

继续执行命令:

keytool -importkeystore -srckeystore ./YOURAPP.keystore -destkeystore ./YOURAPP.keystore -deststoretype JKS
//回车输入你刚才设置的密码,依然提示上边的Warning不用管

查看证书文件信息

keytool -list -v -keystore watt.keystore //需要你输入设置的密码

注意证书文件存放位置:

~/YOURAPP.keystore  // '~'是代表用户的根目录,注意是用户!!!!

4、打包发布

回到HBuilderX填写打包信息

查看HBuilderX控制台,ok正在打包,问题解决

ausheng

爱生活,爱编程

AUSHENG – BLOG

不要害羞,保持联系。我们喜欢结识有趣的人,结交新朋友。