Некоторое время я искал 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, пароль ключа, пароль хранилища ключей. Все правильно. Что мне не хватает? Я сделал резервную копию всех своих файлов, поэтому, если есть конкретный файл, который мне нужен, я мог бы его найти, но я не знаю, что делать ...
Если я не понимаю, пожалуйста, попросите меня уточнить. Благодарность!
android
android-keystore
васимсандху
источник
источник
Ответы:
Я не удивлен, что это не получило никакой поддержки, но вот что я сделал для всех, кто наткнется на этот пост.
Как я уже сказал, все мои файлы были скопированы. Я восстановил файл 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]
Пароли хранилища и ключа должны совпадать! Это устранило мою проблему, и я надеюсь, что это поможет и вам.
источник
[Обновление: это больше не работает в Android Studio 3.0 и выше]
Я столкнулся с аналогичной проблемой, и ни одно из решений не помогло после того, как потратил 3 часа в Интернете, я решил покопаться.
Вот как я решил это: ошибка «Невозможно восстановить ключ» для меня возникла из-за того, что мой «пароль хранилища ключей» был правильным, но «ключевой пароль» (псевдонима ключа) был неправильным . Я был почти уверен, что оба пароля были одинаковыми, но, к моему ужасу, это не так, и я не знал, какой был второй пароль. Поскольку я уже подписал APK, прежде чем проверить файл журнала, который можно найти:
Откройте файлы журнала с даты, когда вы подписали 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***,
И вы найдете пароли в виде простого текста. Это сработает даже, если вы забудете пароли.
источник
master password
который ввел при подписании apk, но мне просто нужно было повторитьkey password
.Если это может кому-то помочь - проблема в моем случае заключалась в том, что «Пароль хранилища ключей» и «Пароль ключа» были неправильными.
источник
Все предложения перепробовал в ответах и комментариях :(
Мой ключевой пароль и пароль хранилища ключей точно такие же. Использование android studio 3.4
Что сработало для меня, так это принудительный выход из Android Studio, запуск снова, очистка и перестройка проекта, а затем создание подписанного apk. все конфиги точно такие же, но на этот раз сработало
источник
[Android Studio 3.3] При создании подписанного APK-файла возникает ошибка "Невозможно восстановить ключ". Мне удалось проверить старый файл idea.log на правильность моего пароля: пароли хранилища ключей и ключей были идентичны и верны.
Обновление ключевого пароля в терминале:
keytool -keypasswd -alias MYKEY -keystore KEYSTORE
Кажется, больше невозможно иметь одинаковые пароли для хранилища ключей и ключа. Keytool выдал мне ошибку, когда я попытался. После установки другого пароля для ключа Android Studio сгенерировала подписанный APK.
Возможно, в предыдущих версиях Android Studio пароли должны были быть идентичными - теперь может быть наоборот.
источник
Это может кому-то помочь.
За несколько дней до этого я сделал резервную копию своего проекта Android на gitlab, а затем установил Windows 10. После этого я клонировал его. Я точно знал псевдоним ключа и оба пароля.
Затем при создании подписанного apk я ввел эти учетные данные, но не смог.
Я поместил файл jks в папку приложения. Я удалил его оттуда и создал отдельную папку в корневой папке проекта Android и поместил туда файл jks .
Затем я попытался очистить, перестроить проект, а затем перезапустил студию Android. Наконец он построил подписанный apk: D
источник
Эта проблема возникает только в том случае, если ваш ключевой пароль или пароль хранилища ключей не совпадают.
источник
Мои пароли были такими же, но по-прежнему возникала эта ошибка. Очистить, перестроить и перезапустить студию Android у меня не сработало. Единственное решение сработало для меня - переместить файл keystore.jks в новое место. Надеюсь это поможет.
источник
Я только что удалил раздел signatureConfigs из файла Gradle моего приложения. Затем перестроил проект, и он снова заработал.
источник
Мне посчастливилось проверить в Android Studio вкладку «Структура проекта / подпись», и я нашел ключевой пароль и пароль хранилища, перечисленные в виде простого текста. Я думал, что они такие же, как друг друга, но это не так.
источник
Если у вас запущено eclipse, попробуйте выключить его и снова сгенерировать подписанный apk.
В моем случае я проверил правильность всех паролей и даже создал новое хранилище ключей из студии Android. Он по-прежнему не работал, но после того, как я отключил работающее eclipse, все просто заработало, со старым хранилищем ключей, которое я использовал, или с новым сгенерированным.
источник
Я уже заархивировал свой файл подписи, когда впервые его создал. Когда я получил эту ошибку, я использовал ее снова. Вы можете использовать его, если у вас есть резервная копия. Я думаю, что мы сломали вещи раньше, чем они заметят.
источник
Я столкнулся с той же проблемой. В моем случае эта проблема была решена после проекта синхронизации с файлами gradle. Это может кому-то помочь.
источник
Я просто удалил
.iml
файл из своего проекта . Потом переделал проект, и он снова заработал.источник