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

Не удается найти запись в Keystore. Но я знаю это там

Android Studio в Windows 10

невозможно загрузить хранилище ключей: непризнанная запись в хранилище ключей

У меня есть существующее приложение, скомпилированное и подписанное. Я создал новую версию. Уникальный идентификатор для приложения тот же (com.name.appname). Я хочу подписать новую версию с существующим ключом. У меня есть ключ. Я знаю пароль. Я знаю, что псевдоним правильный. Все, что я получаю, это: невозможно загрузить хранилище ключей: непризнанная запись в хранилище ключей

Более конкретно: Ошибка: выполнение выполнено для задачи ': app: packageRelease'.

com.android.ide.common.signing.KeytoolException: Не удалось прочитать ключ [имя] из хранилища "[путь]\публикацияKey": непризнанная запись в хранилище ключей

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

Я знаю, что этот материал есть и правильный. Это просто не позволяет мне использовать его.

Что мне здесь не хватает? Есть ли что-то, что мне нужно для редактирования, чтобы он знал, что я действительно хочу использовать эту подпись?

4b9b3361

Ответ 1

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

Затем я смог найти псевдоним и подписать свое приложение в обычном режиме. Как от старой машины, так и от новой.

Просто оставив это здесь в надежде, что кто-то найдет его полезным.

Ответ 2

Вы можете запустить эту команду, чтобы отобразить содержимое файла хранилища ключей:

keytool -list -keystore.keystore

Если вы ищете определенный псевдоним, вы также можете указать его в команде:

keytool -list -keystore.keystore -alias foo

Если псевдоним не найден, будет отображаться исключение:

ошибка keytool: java.lang.Exception: псевдоним не exis

//Иными словами, вы используете следующую команду в командной строке:

C:\Program Files\Android\Android Studio\jre\bin > keytool -exportcert -alias androiddebugkey -keystore% HOMEPATH%.android\debug.keystore | C:\OpenSSL-Win32\bin\openssl.exe sha1 -binary | C:\OpenSSL-Win32\bin\openssl.exe base64