Настройка Eclipse для использования подписанного хранилища ключей
Наконец-то я создал "окончательное" хранилище ключей для своего приложения. Поскольку мое приложение использует Карты Google, я берусь, чтобы обновить все макеты, чтобы использовать новый API-ключ в результате использования приложения.
Теперь я полностью осведомлен о требовании экспортировать подписанный APK для выпуска, но что после этого? Мои мысли таковы, что для дальнейшей разработки и тестирования было бы проще всего, если бы я мог настроить Eclipse на использование моего конечного хранилища ключей вместо хранилища отладки... но я не нашел способа сделать это? Это позволяет мне настраивать "альтернативный" отладочный ключ, но я думаю, что это не то же самое.
Извините, если я слишком смущен, если я полностью ничего не понял.
Ответы
Ответ 1
Мне удалось использовать свое хранилище ключей для Google Play в качестве моего настраиваемого хранилища отладки, чтобы помочь в отладке функциональных возможностей покупки приложений. То же самое, без сомнения, можно было бы применить и для отладки данных Google Maps.
Как Devunwired упомянул, есть оговорки. Но мое решение было следующим:
- Скопируйте свой ключ релиза где-нибудь.
- Измените пароль пароля ключа/ключа и ключевой псевдоним инструкции здесь (также, следуя рекомендациям Devunwired, чтобы они выглядели как отладка хранилище ключей).
- Измените настройки Eclipse > Android > Сборкa > Пользовательская настройка хранилища ключей на путь копии, сделанной на шаге 1.
- Готово!
Ответ 2
Вы можете настроить настраиваемое хранилище ключей для использования в своих отладочных сборках (те, которые происходят при нажатии кнопки "Выполнить..." ) в Eclipse, выбрав "Настройки" → Android → "Сборка" и введите имя файла в "Custom debug keystore".
Однако, он имеет оговорку, что он должен следовать тем же правилам, что и традиционное хранилище отладки, главным образом:
- Пароль хранилища ключей должен быть "андроид"
- Он должен содержать ключ с именем "androiddebugkey"
- Этот пароль должен быть "андроид"
Поэтому, хотя вы можете подписать свои приложения в отладке с тем же хранилищем ключей, что и вы экспортируете, это требует, чтобы производственное хранилище ключей выглядело как хранилище отладки, что делает его менее безопасным, если кто-то получил сделку, если файл (он было бы легче проверить и угадать пароли).
НТН
Ответ 3
Для того, чтобы Eclipse автоматически подписывался для вас при развертывании, вам необходимо настроить хранилище ключей, которое ведет себя как хранилище отладки. Это означает, что должен быть "androiddebugkey", и оба ключа и пароль хранилища ключей должны быть "android" . Поэтому я бы рекомендовал следующее:
- Сделайте копию своего хранилища ключей, я скопировал мой файл под названием iap.keystore
- Откройте окно терминала/команды с помощью keytool на пути (для меня путь D:\NVPACK\jdk1.6.0_45\bin\keytool.exe) или используйте полный путь к
keystore
в приведенных ниже командах
- Измените пароль своего хранилища ключей на "android" :
-
keytool -storepasswd -keystore iap.keystore
- Следуйте инструкциям, чтобы ввести свой старый пароль хранилища ключей
- Следуйте приглашению ввести
android
в качестве нового пароля
- Следуйте подсказке, чтобы подтвердить
android
как пароль
- Переименуйте свой ключ в
androiddebugkey
( замените Old_Key_Store_Name
на ваше текущее имя ключа в следующей команде)
-
keytool -changealias -keystore iap.keystore -alias Old_Key_Store_Name -destalias androiddebugkey
- Следуйте подсказке, чтобы ввести свой пароль хранилища ключей (который теперь находится
andorid
)
- Следуйте подсказкам, чтобы ввести пароль
Old_Key_Store_Name
(это то, к чему у вас ранее был установлен пароль для ключа)
- Измените пароль для
androiddebugkey
-
keytool -keypasswd -keystore iap.keystore -alias androiddebugkey
- Следуйте подсказке, чтобы ввести свой пароль хранилища ключей (который теперь находится
andorid
)
- Следуйте инструкциям, чтобы ввести пароль
androiddebugkey
(это то, что вы ранее установили для своего пароля)
- Следуйте приглашению ввести
android
в качестве нового пароля ключа
- Следуйте подсказке для подтверждения
android
в качестве ключевого пароля
- Теперь у вас есть хранилище ключей (с ключом), которое Eclipse может использовать для автоматического подписи строителей.
- Загрузите Eclipse.
- Окно → Настройки → Android → Сборка
- Следуйте "Custom debug keystore", перейдите к файлу iap.keystore, который мы ранее создали.
- OK
Теперь, когда вы запускаете/отлаживаете свой проект, он будет использовать хранилище ключей, которое мы только что создали, чтобы подписать ваш проект. Это позволит работать как IAP.
BEWARE: это удобно, но, конечно, если кто-то завладеет вашим iap.keystore, они смогут подписывать такие вещи, как вы, используя "android" в качестве пароля хранилища ключей/ключей. Надеюсь, это очевидно из перечисленных выше шагов, но просто возьмите секунду, чтобы оценить, что это означает для вас (или вашей компании). Затем, основываясь на этом, решайте, приемлемы ли риски, и если вам нужно предпринять какие-либо дополнительные меры для обеспечения безопасности этого файла.
Ответ 4
Мы устанавливаем пользовательское хранилище ключей для использования в наших отладочных сборках. Eclipse Перейти к настройкам → Android → Построить и ввести имя файла в "Пользовательское хранилище отладки".
Важно, когда мы создаем наше хранилище ключей для таможни eclipse.:
Пароль хранилища ключей должен быть "android"
Он должен содержать ключ с именем "androiddebugkey"
Этот ключевой пароль должен быть "андроид"
Поэтому, несмотря на то, что вы можете подписать свои приложения в отладке с тем же хранилищем ключей, что и вы экспортируете, это требует, чтобы производственное хранилище ключей выглядело как хранилище отладки, что делает его менее безопасным, если кто-то получил чек, если файл (было бы проще для проверки и угадывания паролей).
если мы хотим изменить пароль хранилища ключей: $
keytool -storepasswd -keystore my.keystore
если мы хотим изменить пароль псевдонима keystore: $
keytool -keypasswd -keystore my.keystore -alias my_name
если мы хотим изменить псевдоним хранилища ключей: $
keytool -changealias -keystore my.keystore -alias my_name -destalias my_new_name
Vkj
![enter image description here]()
Ответ 5
Здесь приведены инструкции по преобразованию регулярного хранилища ключей в хранилище отладки:
fooobar.com/questions/31936/...
Ответ 6
Вы можете ввести оба отладки и ваш выпуск SHA1 для одного и того же ключа Google API с помощью Google Developers Console (console.developers.google.com).
Таким образом, у вас будет тот же ключ API для обоих и больше не придется его менять в AndroidManifest.xml.
Ответ 7
У нас та же проблема некоторое время назад в нашем офисе. Поскольку нам это нужно довольно часто, мы написали простой script, чтобы упростить преобразование хранилищ ключей для отладки.
script доступен на https://github.com/IntellexApps/key2debug
Мы используем его в течение некоторого времени, поэтому он должен быть достаточно стабильным.
ура!