1. 首先创建Key Store
如图所示
上图中的/User/Project/...这个位置可以自定义,文件就叫 upload-keystore.jks 文件没有的话,无所谓自动会创建一个新的文件
接着如下图所示:
直接点Next 下一步
此时在你电脑文件夹中会生成一个文件找到 upload-keystore.jks 记住这个文件的路径等下需要使用
2. 创建文件 .pem
首先查看文件里面的内容:在终端运行 这个段代码
keytool -list -v -keystore /Users/Project/AndroidPub/upload-store.jks -storepass 123456
如下所示这是一个标准的格式
输入密钥库口令:
密钥库类型: PKCS12
密钥库提供方: SUN
您的密钥库包含 1 个条目
别名: upload
创建日期: 2023年9月6日
条目类型: PrivateKeyEntry
证书链长度: 1
证书[1]:
所有者: CN=Rnd, OU=Rnd, O=Rnd, L=hz, ST=gd, C=86
发布者: CN=Rnd, OU=Rnd, O=Rnd, L=hz, ST=gd, C=86
序列号: 582e458f
生效时间: Wed Sep 06 09:34:39 CST 2023, 失效时间: Fri Aug 29 09:34:39 CST 2053
证书指纹:
SHA1: 03:01:13:36:84:16:56:CB:75:x x xxxxxx
SHA256: C5:00:E6:E1:DE:6C:1C:F5:77:A3:3B:3D:FAxxxxxx
签名算法名称: SHA256withRSA
主体公共密钥算法: 2048 位 RSA 密钥
版本: 3
扩展:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 81 A3 58 35 D6 xxx 07 90 B9 0C F3 90 xxx ..X5.OU.......g'
0010: AA 5A 90 10 .Z..
]
]
*******************************************
*******************************************
看到上面的代码之后,我们需要进行生成.pem文件
运行此段代码 cmd命令下运行
keytool -export -rfc -keystore /Users/Project/AndroidPub/upload-keystore.jks -alias upload -file /Users/Project/AndroidPub/upload_certificate.pem
运行成功后之后:
输入密钥库口令:
存储在文件 <upload_certificate.pem> 中的证书
xxx:~ xx$ keytool -export -rfc -keystore /Users/Project/AndroidPub/upload-keystore.jks -alias upload -file /Users/Project/AndroidPub/upload_certificate.pem
接着回到 /Users/Project/AndroidPub/目录中会发现多了一个 upload_certificate.pem 文件
3. 把 upload_certificate.pem 上传到谷歌play 替换掉谷歌原来自动生成的
找到设置 如图所示
点击应用签名如图所示
这个自动生成的你会发现你完全用不了,需要把你生成的.pem 替换掉,替换掉之后需要2天的审核时间,等待2天之后就可以上传app
如上图你点击上传你本地生成替换掉,然后点击申请就自动会变成你的了。
4. 为app生成签名
运行以下代码
记得路径要替换成你自己的电脑路径,我这个路径只是一个demo
jarsigner -verbose -keystore /Users/Project/AndroidPub/upload-keystore.jks -signedjar /Users/Project/GitHub/Android/xxx/app/release/app-release-sign.aab /Users/Project/GitHub/Android/xx/app/release/app-release.aab upload
输入密钥库的密码短语:
正在添加: META-INF/MANIFEST.MF
正在添加: META-INF/UPLOAD.SF
正在添加: META-INF/UPLOAD.RSA
正在签名: BundleConfig.pb
正在签名: BUNDLE-METADATA/com.android.tools.build.obfuscation/proguard.map
正在签名: BUNDLE-METADATA/com.android.tools.build.gradle/app-metadata.properties
正在签名: base/assets/litepal.xml
正在签名: base/res/anim/abc_fade_in.xml
正在签名: base/res/anim/abc_fade_out.xml
正在签名: base/res/anim/abc_grow_fade_in_from_bottom.xml
正在签名: base/res/anim/abc_popup_enter.xml
正在签名: base/res/anim/abc_popup_exit.xml
正在签名: base/res/anim/abc_shrink_fade_out_from_bottom.xml
正在签名: base/res/anim/abc_slide_in_bottom.xml
正在签名: base/res/anim/abc_slide_in_top.xml
正在签名: base/res/anim/abc_slide_out_bottom.xml
正在签名: base/res/anim/abc_slide_out_top.xml
正在签名: base/res/anim/abc_tooltip_enter.xml
显示上面的基本已经成功,如果出现这个就完美完成
>>> 签名者
X.509, CN=Rnd, OU=Rnd, O=Rnd, L=hz, ST=gd, C=86
[可信证书]
jar 已签名。
警告:
签名者证书为自签名证书。
5. 上传到谷歌play
接下来把生成的 app-release-sign.aab 上传到 谷歌play
如图所示 选择正式版然后会有修改发布版本
点击修改发布版本,会有一个版本上传,然后把生成的 app-realse-sign.abb拖进去就可以实现上传,稍等片刻就会显示成功。
以上是上传到谷歌play从打包到签名的一套操作,希望能够对你有帮助。
ArdWang (Wang Jing) · GitHub 给个star吧!
分享PS在线作图工具