更新apk时使用相同的密钥库,但SHA1值仍不同

7
我几个月前使用发布密钥将我的应用上传到Google Play,并为以后的更新存储了该密钥。

现在我已经对apk进行了更新,尝试使用相同的密钥、别名和密码签名新的apk并上传到Google Play,但没有成功。Playstore向我显示以下错误:enter image description here

唯一的变化是,以前该应用程序是使用eclipse开发和构建的,而现在是使用Android Studio。这是否是导致以上错误的原因?

不行,必须上传一个全新的应用程序,包名和密钥库都要重新命名。 - Jitu
我有同样的问题...但我的情况不同。我可以在Android Studio 0.4.2中签署我的应用程序,但我无法在新版本(1.4.xxx)中签署我的应用程序。所以我仍然在旧版本中开发;)))有趣... - Eliasz Kubala
我也有同样的问题,但是没有找到任何解决方法。 请问这里有谁知道解决方案,请帮助我们。 - ULHAS PATIL
目前尚未找到解决方案,我们需要取消发布当前的应用程序,然后添加一个新的应用程序。 - Jitu
请查看下面的答案 - Amit Vaghela
显示剩余3条评论
1个回答

1
从错误信息来看,我认为您混淆了密钥库,或者Android Studio在进行发布构建时使用了错误的密钥库。要完全确定,最好清楚地设置您的build.gradle,并使用命令行自己构建。
 ./gradlew clean assembleRelease

可能发生的情况是Android Studio使用您的调试密钥库(即默认密钥库)来签署发布版本,因为它找不到您在eclipse中使用的原始密钥库,或者某处密码错误...请查看此配置,注意密钥库的位置、命名约定以及它如何对应于build.gradle。请注意签名配置以及它们如何为发布版本设置。要从命令行构建,请简单地进入带有“gradlew”文件的目录,并运行
./gradlew clean assembleRelease

构建发布版apk,或者
./gradlew clean assembleDebug

构建调试 APK。如果失败,请尝试。
./gradlew clean assembleRelease --stacktrace

build.gradle和文件系统设置的截图

但请记住不要将您的密钥放在源代码控制中!这意味着编辑您的.gitignore文件。

有大量信息可供参考,如何实现这一点,请访问此处: http://developer.android.com/tools/publishing/app-signing.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接