无法从商店密钥库读取密钥“ XXX”,或者密码不正确

时间:2019-05-09 05:05:37

标签: android android-gradle

我花了很多时间在此上,看来我找不到用于Keystore值的设置。问题如下:

我正在尝试对APK进行签名,因此该项目可以生成,但签名时出现以下错误:

Caused by: org.gradle.tooling.BuildException: Failed to read key OLDKEYNAME from store "D:\Projects\Android\build-keys\_OLD\oldstorenotselectedingenerationwizard.key.jks": Keystore was tampered with, or password was incorrect
    at com.android.build.gradle.internal.scope.BuildElements$ExecutorBasedScheduler$transform$2.invoke(BuildElements.kt:133)
    at com.android.build.gradle.internal.scope.BuildElements$ExecutorBasedScheduler$transform$2.invoke(BuildElements.kt:110)

异常中显示的密钥是一个旧密钥-我不相信我知道它的密码,但是我无法找到项目中给定位置的引用,并且为该密钥生成了一个新的密钥库。签名拒绝工作。

4 个答案:

答案 0 :(得分:0)

删除$HOME/.android/debug.keystore(在Windows中为C:\Users\[your-username]\.android\debug.keystore)。

然后按照以下步骤配置并生成签名的apk:

https://developer.android.com/studio/publish/app-signing#sign-apk

答案 1 :(得分:0)

内森,

使用新生成的密钥库覆盖构建系统正在使用的密钥库位置。

修改您的app / build.gradle

android {

      signingConfigs {
         config {
            keyAlias 'xyz'
            keyPassword 'Abcd#033'
            storeFile file('keystore/mykey.keystore')
            storePassword 'Abcd#033'
         }

      }

 }     

答案 2 :(得分:0)

因此,我仍然不确定原因,但已将Android更新至最新版本(3.4),并将Gradle更新至5.1.1。该项目没有更改,并且现在可以正确签名,因此似乎是我找不到的错误或某些配置问题。

答案 3 :(得分:-1)

我有同样的问题,我转到“构建”>“清理项目”。然后再试一次,它起作用了。