Ошибка подписи APK: не удалось прочитать ключ из хранилища ключей


Я разрабатываю приложение для android под intellij и gradle. и используя следующий способ для создания файла хранилища ключей:

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

затем использовал файл хранилища ключей в сборке.Gradle в:

signingConfigs {
    robert {
        storePassword 'robert'
        storeFile file('/Users/bournewang/Documents/Project/android.keystore')
        keyPassword 'robert'
        keyAlias 'mike'
    }
}

при попытке создать подписанный apk файл:./ gradlew assembleRelease

это дает ошибку:

не удалось выполнить задачу': Myexample: packageRelease'.

не удалось прочитать ключ из хранилища ключей

6 52

6 ответов:

сначала проверьте свой файл хранилища ключей, в вашем примере вы создаете файл с именем my-release-key.хранилище ключей. Если его правильно и действительно присутствует в папке Users/bournewang/Documents/Project Регистрация псевдоним, в вашем примере это - alias alias_name, но в настройках вы указали псевдоним Майк

для того, чтобы узнать, что вы можете использовать Gradle в это .

на mac:

./gradlew signingReport

На Windows:

gradlew signingReport

скорее всего, ваш псевдоним ключа не существует для вашего файла хранилища ключей.

этой ответ должен исправить вашу проблему подписания;)

удаление double-quotes решил мою проблему, теперь его:

DEBUG_STORE_PASSWORD=androiddebug
DEBUG_KEY_ALIAS=androiddebug
DEBUG_KEY_PASSWORD=androiddebug

в моем случае, при копировании текста из другого источника он каким-то образом включал пространство в конце записи буфера обмена. Таким образом, ключевой пароль имел пробел в конце.

Это может быть любой параметр, а не просто имя файла или псевдоним - для меня это был пароль.