Android Studio - Keystore был изменен или пароль был неверен
Я пытаюсь создать подписанный APK с помощью встроенного виджета в Android Studio v1.4.
Однако я получил эту досадную ошибку
Ошибка: выполнение выполнено для задачи ': app: packageRelease'. Не удалось прочитать ключ cckey из хранилища "C:\Users\Lancelot\Desktop\release.jks": был поврежден Keystore или неверный пароль
Мне удалось получить свой ключевой псевдоним, как показано ниже.
![введите описание изображения здесь]()
(Чтобы попасть сюда, пароль для хранения ключей должен быть правильным, в противном случае он будет показывать ошибку)
Затем я ввел свой пароль, но не успел подписаться на APK...
Я даже попытался изменить пароль ключа с помощью командной строки keytool -keypasswd -alias cckey -keystore C:\Users\Lancelot\Desktop\release.jks
. Запустив это, мне нужно ввести старый пароль правильно, прежде чем вводить новый пароль, который все прошел; это доказывает, что пароль ключа не был ошибочным в первую очередь.
Итак, вопрос в том, что если мой пароль для хранения ключей, ключевой псевдоним и пароль ключа правильные, то что с ним не так?
Ответы
Ответ 1
По-видимому, я только что нашел еще один пост, опубликованный несколько месяцев назад, который решил мои проблемы, с которыми я боролся в течение нескольких дней...
Просто нужно изменить ключ хранилища ключей и пароль псевдонима для того, чтобы он был таким же, чтобы он работал. Хотя я до сих пор не знаю, почему такое же хранилище хранилища работало до того, как я публиковал обновления; то не работает, пока я не сменил пароли.
Если у кого-то есть ответ на этот вопрос, пожалуйста, пусть все знают!
Ответ 2
У меня была похожая проблема при обновлении моего приложения. Keytool не читал правильный файл хранилища ключей и вместо этого указывал на старый файл хранилища ключей, который я создал несколько месяцев назад и не использовал. Искал некоторые решения онлайн, но не нашел. Почти сдался, но я подумал о том, чтобы очистить проект, нажав " Построить", затем " Очистить проект". Это последнее средство сработало для меня.
Ответ 3
У меня была такая же проблема, и я на 100% уверен в своем пароле. Я нашел решение напрямую, добавив -storepass
в командной строке. С помощью этой команды был трюк:
keytool -list -v -keystore C:\....\keystore.jks -storepass HereMyPassword -alias HereMyAlias
Ответ 4
Очевидно, Google решил установить пароль хранилища ключей по умолчанию на android
.
Утилита keytool предложит вам ввести пароль для хранилища ключей. Пароль по умолчанию для хранилища ключей отладки - android
. Keytool затем печатает fingerprint на терминал.
См. Https://developers.google.com/android/guides/client-auth.
Ответ 5
как я решил ту же проблему с Android 2.2.3
Студия Android → файл > структура проекта
найдите свой проект под модулями с левой стороны и выберите его и щелкните вкладку подписания. то вы можете создать новую конфигурацию, щелкнув значок "зеленый плюс" и заполнив все учетные данные при подписании с помощью существующего ключа хранилища ключей.
(убедитесь, что ваши "ключевые слова" "ключевой пароль" и "Сохранить пароль" должны использоваться ранее с тем же хранилищем ключей, что и сейчас)
затем перейдите на вкладку ароматизаторов и выберите созданный файл конфигурации в качестве подписи.
снова перейдите на вкладку "Типы построек" и выберите созданный файл конфигурации как "Подписывание конфигурации".
и ok для завершения задачи
счастливое кодирование:)
Ответ 6
Убедитесь, что после определения констант нет пробелов.
MYAPP_RELEASE_STORE_FILE=mykeystore.keystore
MYAPP_RELEASE_KEY_ALIAS=keyalias
MYAPP_RELEASE_STORE_PASSWORD=pass
MYAPP_RELEASE_KEY_PASSWORD=pass
Ответ 7
В моем случае я копировал и вставлял хранилище ключей и пароли ключей из Evernote, а Android Studio не справлялась с этим правильно. После ввода паролей вручную я смог создать APK.
Ответ 8
Моя проблема заключалась в том, что я установил пароль хранилища в keyPassword
и пароль ключа в storePassword
и менял пароли один за другим, проблема была решена.
Ответ 9
В моем случае (с использованием Android Studio) я обнаружил, что файл Keystore не может быть удален, и он кажется заблокированным OpenJDK. Я подозреваю, что что-то не так между OpenJDK и брандмауэром Windows10. Я временно закрываю брандмауэр. И это работает.
Ответ 10
В моем случае я забыл перевести цель сборки из теста эспрессо в приложение:
Ответ 11
Иногда в режиме отладки вам не нужно вводить пароль, просто нажмите Enter, когда на экране появится запрос пароля :)