Подтвердить что ты не робот

Android Studio: невозможно восстановить ключ

Я некоторое время искал StackOverflow, но я просто хотел убедиться...

Я вытер мой ноутбук некоторое время назад и копировал все мои файлы. У меня есть файл android.jks, и он вернулся на место. Когда я пытаюсь сгенерировать подписанный APK, он дает мне ту же страшную ошибку, которую получают все:

Error:Execution failed for task ':app:packageRelease'.
> Failed to read key conjugationappkey from store     
"/Users/wasimsandhu/android.jks": Cannot recover key

У меня есть мой android.jks, пароль для ключа, пароль для хранения ключей. Все правильно. Что мне не хватает? Я скопировал все мои файлы, поэтому, если есть конкретный файл, который мне нужен, я мог бы его найти, но я понятия не имею, что делать...

Если у меня нет никакого смысла, пожалуйста, попросите меня уточнить. Спасибо!

4b9b3361

Ответ 1

Я не удивлен, что это не получило никакой тяги, но вот что я сделал для всех, кто наткнулся на этот пост.

Как я уже сказал, все мои файлы были скопированы. Я восстановил файл android.jks из более старой резервной копии. Затем я открыл окно терминала и набрал следующее:

keytool -storepasswd -new [insert new keystore password] -keystore [insert keystore file name]

keytool -keypasswd -alias [insert alias] -new [insert new key password] -keystore [insert keystore file name]

Хранилища ключей и ключевые пароли должны быть одинаковыми! Это устранило мою проблему, и я надеюсь, что это тоже поможет.

Ответ 2

[Обновление: это больше не работает в Android Studio 3.0 и выше]

Я столкнулся с подобной проблемой, и ни одно из решений не сработало, потратив 3 часа в Интернете, я решил покопаться.

Вот как я решил это: ошибка "Не удается восстановить ключ" для меня была из-за того, что мой "пароль хранилища ключей" был правильным, а "ключевой пароль" (из псевдонима ключа) был неверным. Я был почти уверен, что оба пароля были одинаковыми, но, к моему ужасу, они не были, и я не знал, каким был второй пароль. Как я уже подписал APK, прежде чем я проверил файл журнала, который можно найти:

  • C:\Users\имя_пользователя\.AndroidStudio2.1\система\журнал\

Откройте файлы журнала с даты, когда вы подписали apk и найдите следующие записи:

 INFO - .project.GradleExecutionHelper - Passing command-line args to Gradle Tooling API: [--configure-on-demand, -Pandroid.injected.invoked.from.ide=true, 
-Pandroid.injected.signing.store.file=E:\HobbyProjects\XYZProject\gpsjs.jks, 
-Pandroid.injected.signing.store.password=***KeyStorePassword***, 
-Pandroid.injected.signing.key.alias=***alias_name***, 
-Pandroid.injected.signing.key.password=***Key password***, 

И вы найдете пароли в виде простого текста. Это даже будет работать, если вы забудете пароли.

Ответ 3

Если это может помочь кому-то - проблема в моем случае состояла в том, что "Пароль хранилища ключей" и "Пароль ключа" были неверными.

Ответ 4

[Android Studio 3.3] Я получил ошибку "не удается восстановить ключ" при создании подписанного APK. Я смог проверить в старом файле idea.log правильность моего пароля: пароли хранилищ ключей и паролей ключей были идентичными и правильными.

Обновление пароля ключа в терминале:

keytool -keypasswd -alias MYKEY -keystore KEYSTORE

Кажется, больше невозможно иметь идентичные пароли для хранилища ключей и ключей. Keytool дал мне ошибку, когда я пытался. После установки другого пароля для ключа Android Studio сгенерировала подписанный APK.

Возможно, в предыдущих версиях Android Studio пароли должны были быть идентичными - теперь это может быть наоборот.

Ответ 5

Эта проблема возникает, только если ваш пароль ключа или пароль хранилища ключей не совпадают.

Ответ 6

Мне очень повезло, что я проверил в Android Studio вкладку "Структура проекта/Подписание" и нашел пароль ключа и пароль хранилища в виде простого текста. Я думал, что они были одинаковы, но это не так.

Ответ 7

Если у вас запущено eclipse, попробуйте выключить его и снова сгенерировать подписанный apk.

В моем случае я проверил правильность всех паролей и даже сгенерировал новое хранилище ключей от студии Android. Это все еще не работало, но после того, как я выключил затмение, которое работает, все просто работало, со старым хранилищем ключей, которое я использовал, или с недавно сгенерированным.

Ответ 8

Я заархивировал свой файл подписи раньше, когда впервые его создал. Когда я получил эту ошибку, я использовал ее снова. Вы можете использовать его, если у вас есть резервная копия. Я думаю, что мы сломали вещи, прежде чем они заметят.

Ответ 9

Это может помочь кому-то.

За несколько дней до этого я создал резервную копию своего проекта Android на gitlab, а затем установил Windows 10. После этого я клонировал его. Я точно знал псевдоним ключа и оба пароля.

Затем при создании подписанного apk я ввел эти учетные данные, но не смог.

Я поместил файл JKS в папку приложения. Я удалил его оттуда и создал отдельную папку в корневой папке проекта Android и поместил туда файл jks.

Затем я попытался очистить, перестроить проект, а затем перезапустил Android Studio. Наконец он построил подписанный апк: D

Ответ 11

Я перепробовал все приведенные предложения в ответах и комментариях :(

Мой ключевой пароль и пароль хранилища ключей абсолютно совпадают. Использование Android Studio 3.4

Для меня сработало принудительное завершение работы Android Studio, повторный запуск, очистка и пересборка проекта, а затем создание подписанного apk. все конфиги точно так же, но он работал на этот раз