即使使用相同的密钥库,更新apk SHA1也会有所不同

时间:2015-08-28 07:28:52

标签: android android-studio google-play android-keystore app-update

我在使用发布密钥库签名后几个月前将我的应用程序上传到Goggle Play,我已经存储了该密钥库以供将来更新。

现在我已经更新了apk,但有一些更改,尝试上传使用相同密钥库签名的新apk以及相同别名密码,不允许将apk上传到Goggle Play。 Playstore向我显示以下错误:enter image description here



唯一的变化是,早期的应用程序是使用 eclipse 开发和构建的,现在在 android studio 中这可能是显示上述错误的原因???

1 个答案:

答案 0 :(得分:1)

从错误消息我会说你已经混淆了密钥库,或者android studio只是使用了错误的一个来进行发布构建。完全确定的最好方法是清楚地设置build.gradle,并使用

在命令行上自行构建它。
 ./gradlew clean assembleRelease

可能发生的事情是Android Studio正在使用您的调试密钥库(即默认值)来签署发布版本,因为它无法找到您在eclipse中使用的原始密钥库,或者您在某处使用了错误的密码...

查看此配置,注意密钥库的位置,命名约定以及它与build.gradle的对应关系。请注意signingconfigs以及如何为发布版本设置它们。要从命令行构建,只需使用" gradlew"进入目录。文件,然后运行

./gradlew clean assembleRelease

构建发布apk或

./gradlew clean assembleDebug

构建调试apk。如果失败,请尝试

./gradlew clean assembleRelease --stacktrace

Screenshot of build.gradle and filesystem setup

但请记住不要将钥匙放在源代码管理器中!这意味着要编辑.gitignore文件。

这里有一堆关于如何执行此操作的信息: http://developer.android.com/tools/publishing/app-signing.html