androidstudio打包apk签名相关.

网上度娘一堆 都是摘抄……重点是每个都有错的。。。也是醉了
那就整理一下,废话不多说,开撸

1、环境信息

这个没得说 快捷键win+r cmd 打开命令行界面,输入 java -version查询是否按照jdk 没有安装自己去 度娘 这个不解释了

androidstudio打包apk签名相关.

jdk是否安装.png

2、 生成jks标准文件

进入到需要生成jks的文件夹 本文在 E:\cert 目录下生成
①、命名 shift+鼠标右键 在此处打开命令行窗口
②、 执行命令 keytool -genkeypair -alias demo -keyalg RSA -keypass 123789 -storepass 123789 -keyalg RSA -keysize 2048 -validity 3650 -keystore demo.jks

参数说明:
storepass keystore 文件存储密码
keypass 私钥加解密密码
PS: 上面两个密码要一致
keyalt 采用公钥算法,默认是DSA
validity 有效期 单位是天
keysize **长度(DSA算法对应的默认算法是sha1withDSA,不支持2048长度,此时需指定RSA)
keystore 指定keystore文件 如上面命令中demo.jks

androidstudio打包apk签名相关.

image.png

③、如上图 按提示输入你的信息 最后输入y 确认即可;
④、转换为行业标准格式 输入 keytool -importkeystore -srckeystore demo.jks -destkeystore demo.jks -deststoretype pkcs12

 

androidstudio打包apk签名相关.

image.png

3、查看详情

keytool -list -keystore demo.jks -v
根据提示输入命令

 

androidstudio打包apk签名相关.

查看详情

4、生成证书

执行命令 keytool -alias demo -exportcert -keystore demo.jks -file demo.cer
输入密码即可

 

androidstudio打包apk签名相关.

image.png

androidstudio打包apk签名相关.

文件夹.png

 

双击证书 查看

 

androidstudio打包apk签名相关.

证书信息

基本上到这一步已经完成本文的内容,以下是补充以及踩坑

5、查询公匙和私匙

jks文件中的私钥不能直接得到,需要通过openssl将jks文件转换成pkcs12格式后再进行提取
执行命令 keytool -v -importkeystore -srckeystore demo.jks -srcstoretype jks -srcstorepass 123789 -destkeystore demo.pfx -deststoretype pkcs12 -deststorepass 876543210 -destkeypass 12345678

androidstudio打包apk签名相关.

转码.png

查询私匙

执行如下命令便可以将demo.pfx的私钥导出:
openssl pkcs12 -in demo.pfx -nocerts -nodes -out demo.key
输入密码打开即可

查看公匙

执行命令 keytool -list -rfc -keystore demo.jks -storepass 123789

 

androidstudio打包apk签名相关.

查看公匙

6、关于 openssl 命令不存在问题

查询了很多资料 人笨没有找到合适办法。。。。 哪位大佬知道了告知下 感激不尽
贴上链接
https://www.jb51.net/softjc/575021.html
https://blog.csdn.net/bgfuufb/article/details/83927001
https://blog.csdn.net/qq_39081974/article/details/81059022