Android и Gradle используют старое несуществующее хранилище ключей при подписании приложения - PullRequest
0 голосов
/ 25 января 2019

Я попытался подписать свое новое приложение для Android, используя данные из старого хранилища ключей с именем "keystore.keystore" . Не удалось восстановить ключ, поэтому я удалил это хранилище ключей с диска и создал новое с именем "keystore.jks" .

Затем я добавил следующее в build.gradle, следуя инструкциям со страницы https://developer.android.com/studio/build/build-variants#signing:

signingConfigs {
    release {
        storeFile file("C:\\SomeDirectory\\keystore.jks")
        storePassword "mypassword123"
        keyAlias "key"
        keyPassword "mypassword123"
    }
}

buildTypes {
    release {
        signingConfig signingConfigs.release
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

Затем я перешел к пункту Сборка / создание подписанного пакета / APK в Android Studio. Он не выбирал информацию о хранилище ключей, ключе или псевдониме из указанного выше файла build.gradle, поэтому я снова ввел его вручную в диалоговом окне.

После нажатия кнопки «Далее» задание завершилось со следующей ошибкой:

"C: \ SomeDirectory \ keystore.keystore (система не может найти файл указано)».

Обратите внимание на имя хранилища ключей, это старое имя. Откуда он взялся ???

Итак, я открыл cmd.exe и запустил это: "gradlew.bat assemblyRelease". Была похожая ошибка:

Задача: app: packageRelease FAILED FAILURE: сборка не удалась, исключение. * Что пошло не так: Не удалось выполнить задачу ': app: packageRelease'. java.io.FileNotFoundException: C: \ SomeDirectory \ keystore.keystore (Система не может найти указанный файл)

Аннулирование кэшей / перезапуск не помогает.

Почему gradle ссылается на старое имя хранилища ключей, как заставить его использовать новое хранилище ключей?

Ответы [ 3 ]

0 голосов
/ 12 апреля 2019

gradlew clean заставит gradle использовать новый

0 голосов
/ 07 июня 2019

Сегодня я столкнулся с той же проблемой.

Для меня сработало удаление файла app/build/intermediates/signing_config/release/out/signing-config.json между сборками (я не знаю, почему это работает).

0 голосов
/ 25 января 2019

У меня была точно такая же проблема. Android Studio Clean Project и перезагрузка решают это для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...