使用 Google Play 上传密钥签署 APK
Posted
技术标签:
【中文标题】使用 Google Play 上传密钥签署 APK【英文标题】:Signing an APK with Google Play upload key 【发布时间】:2018-03-01 00:09:27 【问题描述】:我在 Play 商店中创建了一个测试应用,以测试 Google Play 签名功能。一旦我创建了测试应用程序并启用了该功能,我就可以访问“部署证书”。我没有下载或以任何方式使用它。以下是我遵循的步骤:
-
然后使用 android Studio,我创建了一个新的密钥库,给它一个
密码并使用密码创建别名(像往常一样)。
使用在步骤 1 中创建的密钥库对应用程序进行签名 将应用程序上传到
Google Play 商店。
已下载上传密钥证书。添加了上传密钥
使用命令在步骤 1 中创建的密钥库的证书
keytool.exe -importcert -file upload.der -keystore
mykeystore.keystore
使用命令检查是否已添加到密钥库
keytool.exe -list -keystore mykeystore.keystore
。现在有两个
别名,在步骤 3 中添加的新别名(名为 mykey)。它的类型是受信任的证书。
现在,由于“受信任的证书条目不受密码保护”,没有别名密码,Android Studio 不允许我签署应用程序,当然我不能使用随机密码,因为它们“不受密码保护”。如何使用它来签署我的 apk 以备将来更新?我在这里遗漏了一些重要的东西还是我的理解不正确?
【问题讨论】:
尝试在 -importcert 期间使用 -storepass 您有在第 1 步创建的 Keystore 的备份吗? @nikka 是的,我有。 我认为证书之间存在一些不匹配,否则在将上传密钥证书添加到密钥库时,它会要求替换现有别名。您可以按照此处提到的步骤操作:***.com/a/45749607/2487029. @nikka 实际上它确实要求。但它不会“替换”现有别名。只添加新的。就像您提供的链接中一样 【参考方案1】:使用上传证书upload_cert.der
,而不是应用签名证书deployment_cert.der
。您可以在 Google Play Console 中的 App Signing Certificate 下下载它。
【讨论】:
以上是关于使用 Google Play 上传密钥签署 APK的主要内容,如果未能解决你的问题,请参考以下文章
如何为 Google App Signing 生成上传密钥?
无法使用 Google Play 应用签名上传证书更新发布 APK(使用原始密钥库)
Google Play 控制台:丢失了上传 APK 所需的上传密钥