Подписание двух приложений одним и тем же ключом - PullRequest
9 голосов
/ 23 ноября 2011

Я создаю два приложения: первое приложение com.pakname.pak1 и второе с именем пакета com.pakname.pak2, затем я получил один ключ mykey.keystore.

Что произойдет, если я подпишу оба приложения с помощьютот же ключ и опубликовать их на рынке Android?

это хорошая привычка?Наверное, нет, но я не получаю смысла подписывать приложения одной и той же компании разными ключами.

Может кто-нибудь объяснить мне такой сценарий

Спасибо

Ответы [ 2 ]

15 голосов
/ 23 ноября 2011

Прочитайте это

Стратегии подписания

Некоторые аспекты подписи приложения могут повлиять на ваш подход к разработке приложения, особенно если вы планируете выпустить несколько приложений.

В целом, рекомендуемая стратегия для всех разработчиков - подписывать все ваши приложения одним и тем же сертификатом в течение ожидаемого срока службы ваших приложений.Это следует сделать по нескольким причинам:

  • Обновление приложения. Выпуская обновления для своего приложения, вы захотите продолжить подписывать обновления тем же сертификатом или набором сертификатов., если вы хотите, чтобы пользователи без проблем обновились до новой версии.Когда система устанавливает обновление для приложения, она сравнивает сертификаты в новой версии с сертификатами в существующей версии.Если сертификаты совпадают точно, включая данные сертификата и порядок, система разрешает обновление.Если вы подписываете новую версию без использования соответствующих сертификатов, вам также нужно будет присвоить приложению другое имя пакета - в этом случае пользователь устанавливает новую версию как совершенно новое приложение.

  • Модульность приложения. Система Android позволяет приложениям, подписанным одним и тем же сертификатом, запускаться в одном и том же процессе, если этого требуют приложения, так что система обрабатывает их как одно приложение.Таким образом, вы можете развертывать свое приложение в модулях, и пользователи могут обновлять каждый из модулей независимо, если это необходимо.

  • Код / обмен данными через разрешения.Система Android обеспечивает принудительное применение разрешений на основе сигнатур, поэтому приложение может предоставлять функциональность другому приложению, подписанному указанным сертификатом.Подписывая несколько приложений одним и тем же сертификатом и используя проверки разрешений на основе сигнатур, ваши приложения могут безопасно обмениваться кодом и данными.

0 голосов
/ 23 ноября 2011

На Маркете действительно важны имя пакета и версия. Если вы попытаетесь загрузить два разных имени пакета для одного и того же приложения, вы попадете в серую зону, полную боли :( Во-вторых, если вы попытаетесь загрузить одно и то же приложение дважды, забыв обновить версию, Маркет отклонит вашу загрузку и вам придется пересобрать приложение, изменив версию. Наконец, я использую то же хранилище ключей и ту же подпись для своих приложений без проблем:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...