微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Google Play控制台读取的.Keystore值不同于Keytool的值

如何解决Google Play控制台读取的.Keystore值不同于Keytool的值

我正在使用Expo制作一个Android应用。我从Google Play控制台下载了上传证书。这是一个.der文件。我跑:

keytool -importcert -file certificate.der -alias someAlias -keystore some.keystore

这将创建一个带有3个证书指纹的.jks类型的.keystore文件。 Google Play控制台在上传过程中查看的是SHA1指纹,它具有19对值,例如01:02:A1 ...

上传到Google Play控制台后,分别使用expo build:android -t apk -cexpo build:android -t app-bundle -c 重设我的密钥并构建.apk或.aap时,我收到一条我没有使用过的错误消息右键。

我得到这些错误

.apk错误上传了未使用上传证书签名的APK。您必须使用相同的证书。上传证书具有指纹:SHA1:01:02:A1 ... -根据 keytool -list -v -keystore some.keystore,我新创建的.keystore的指纹;错误继续说-,并且用于签名上传的APK的证书具有指纹: SHA1:98:97:96:... -完全不同的指纹。

.Aap错误您的Android应用程序捆绑包使用错误的密钥签名。确保使用正确的签名密钥对您的应用捆绑包进行了签名,然后重试:SHA1:55:66:77 ... -另一个完全不同的值。

我将上载.der用于.apk版本的应用程序构建,并且将应用签名.der用于.aap版本的应用程序构建,并且两次Google Play控制台读取的SHA1指纹值均不同于Keytool的值读取相同的.keystore。

切换密钥,未重新下载或重建都没有影响,并且keytool -list 始终声称.keystore指纹与Google Play控制台要求的指纹匹配。

我缺少一些简单的东西吗?任何帮助表示赞赏。

解决方法

我已经在How to use upload certificate to release an app update?中详细回答了类似的问题,但总之,您不能使用证书来签署APK或应用捆绑包:证书仅包含公钥,而您需要私钥来签名APK或应用捆绑包。

Google没有私钥,因此您无法从Play控制台下载私钥。您需要使用与用来签名上传到控制台的第一个APK相同的密钥库,不能创建新的密钥库。

如果您丢失了该密钥库,则需要联系Play developer support并告知他们,他们将为您提供有关如何重置密钥的说明。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。