Я занимаюсь экспортом приложения, и мне очень любопытно хранить хранилище ключей и ключевые слова. Я не совсем уверен, для чего они нужны, или сколько я должен создать (может быть, один для каждого приложения?). Буду признателен за любую информацию, касающуюся этих ключей. Благодаря
KeyStore и ключевой псевдоним
Ответ 1
Это в основном способ идентифицировать себя с вашим приложением. Существуют ключи отладки и ключи подписи, которые вам нужно будет загрузить APK в Play Store и опубликовать ваше приложение. Ключевой псевдоним - это просто обычное имя, которое указывает на конкретный сертификат. Вы можете создать его для каждой версии или просто использовать один для всех своих приложений. Я предлагаю создать один для каждого приложения и убедиться, что вы копируете несколько копий. Мне нравится держать 3, один в моей системе, один в моем Dropbox, а другой на внешнем. Если вы потеряете файл хранилища ключей, его невозможно восстановить или опубликовать будущие версии приложения. Эти вопросы довольно полезны
РЕДАКТИРОВАТЬ: раздел "Подписывание приложений" на сайте разработчика фактически предлагает использовать один и тот же сертификат во всех ваших приложениях
В общем, рекомендуемая стратегия для всех разработчиков заключается в том, чтобы подписать все ваши приложения с тем же сертификатом на протяжении всей ожидаемой продолжительности ваших приложений. Есть несколько причин, почему вы должны это сделать...
Обновление приложения. Когда вы публикуете обновления для своего приложения, вы должны продолжать подписывать обновления с тем же сертификатом или набором сертификатов, если вы хотите, чтобы пользователи могли беспрепятственно обновляться до новой версии. Когда система устанавливает обновление для приложения, оно сравнивает сертификат в новой версии с версиями в существующей версии. Если сертификаты совпадают точно, включая как данные сертификата, так и порядок, система разрешает обновление. Если вы подписываете новую версию без использования соответствующих сертификатов, вы также должны назначить другое имя пакета для приложения - в этом случае пользователь устанавливает новую версию как совершенно новое приложение.
Модульность приложения. Система Android позволяет приложениям, подписанным одним и тем же сертификатом, работать в одном и том же процессе, если приложения так требуют, чтобы система рассматривала их как одно приложение. Таким образом, вы можете развернуть свое приложение в модулях, и пользователи могут самостоятельно обновлять каждый из модулей, если это необходимо. Обмен кодами/данными через разрешения - система Android обеспечивает принудительное выполнение разрешений на основе сигнатур, чтобы приложение могло раскрывать функциональность другому приложению, подписанному с указанным сертификатом. Подписывая несколько приложений с тем же сертификатом и используя проверки разрешений на основе сигнатур, ваши приложения могут безопасно использовать код и данные.