Проблема подписи Keytool: был поврежден Keystore, или пароль был неправильным
Я пытаюсь подписать версию моего приложения для Android (отладка была подписана отлично) для API Карт Google:
keytool -list -alias cancertrials -keystore /Users/syalam/Documents/workspace/Cancer_Trials/keys/release -storepass android -keypass cancertrials
Но я получаю ошибку:
java.io.IOException: Keystore was tampered with, or password was incorrect
Я уверен, что пароль правильный, потому что когда я пытаюсь экспортировать свое приложение в Eclipse, он запрашивает хранилище ключей и пароль, и я правильно ввожу его.
Не уверен, почему я не могу подписать это? Мне нужно отображать Карты Google в режиме деблокирования (работает в режиме отладки).
Ответы
Ответ 1
Я не думаю, что вам нужно включить storepass, когда вы просто делаете список. Хранилище хранит закрытый ключ, который не отображается при выполнении списка. Просто попробуйте следующее:
keytool -list -keystore /Users/salam/Documents/yada/yada
Затем при появлении запроса предоставьте пароль к хранилищу ключей. Если это работает, вы можете попробовать просто keypass в командной строке.
Вы также можете проверить и убедиться, что используете одну и ту же версию Java. Я не думаю, что проблема, но если выше это не поможет попробовать.
Ответ 2
Как-то на окнах, keytool не принял пароль. Мне нужен только пароль SHA1 для настройки идентификатора клиента в проекте на консоли google dev. Казалось, что для меня работало
keytool --list --keystore android.jks --protected
Это напечатало ключи SHA1 для всех псевдонимов.
Ответ 3
У меня такая же проблема с jarsigner на jdk1.6.0.31, когда я переключился на 1.6.0_29 jarsigner работает правильно. Помните о версии jdk.
Ответ 4
Проверьте имя псевдонима один раз. Несколько раз ваш псевдоним отличается от имени псевдонима keytool, тогда он дает ту же ошибку.
то есть.
Ответ 5
keytool -list -keystore "Path of the keystore"
Эта команда запрашивает пароль в машинах linux
, тогда как на машине Windows вам просто нужно ввести хранилище ключей.