Преобразование идентификатора группового символа в один идентификатор - PullRequest
8 голосов
/ 16 декабря 2009

У меня есть приложение в магазине приложений, которое использует групповой идентификатор пакета. Я хочу реализовать покупки внутри приложения, для которых требуется не подстановочный идентификатор. Как преобразовать подстановочный идентификатор существующего приложения в статический идентификатор для покупки в приложении и push-уведомления?

Ответы [ 3 ]

14 голосов
/ 09 июня 2010

Идентификатор пакета для приложения всегда должен оставаться неизменным между обновлениями, но AppID может фактически отличаться. Поэтому все, что вам нужно сделать, это создать новый AppID, который использовал бы тот же идентификатор пакета, что и исходное приложение, а не подстановочный знак.

Приложениям, использующим подстановочный знак, все еще требуется обычный идентификатор пакета. Подстановочный идентификатор AppID позволяет вам использовать любой идентификатор пакета, который вам нравится, но он все еще нужен.

http://developer.apple.com/library/ios/#qa/qa1713/_index.html https://developer.apple.com/library/ios/#technotes/tn2259/_index.html

3 голосов
/ 16 декабря 2009

Короче говоря, вы можете преобразовать уже отправленное приложение, которое использует групповой идентификатор пакета, в уникальный идентификатор приложения. Тем не менее, у вас возникнут некоторые проблемы или последствия с точки зрения пользователя, если вы это сделаете.

Apple использует идентификаторы пакетов для идентификации приложений в магазине приложений (отсюда и термин App ID: -)).

Проблема, с которой вы сталкиваетесь, заключается в том, что ваше приложение уже загружено в App Store с возможностью загрузки пользователем. Теперь, когда вы обновляете свое приложение новым уникальным идентификатором приложения, пользователи, которые уже загрузили ваше приложение (со старым идентификатором приложения), не получат обновление (с новым уникальным идентификатором приложения).

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

Если вы создаете уникальный идентификатор для своего приложения (что вы можете). У пользователей, которые скачивают новое обновленное приложение, все будет в порядке, но для пользователей, которые скачали ваше приложение до обновления. Что ж ... теперь вы официально создали приложение-сироту для этих пользователей, эти пользователи никогда не получат это обновление, поскольку оно не соответствует идентификатору приложения.

Насколько существует способ обойти это. Я не уверен, что есть. Я могу только предложить, чтобы вы ВСЕГДА создавали уникальные идентификаторы приложений для будущих приложений выпуска.


Чтобы создать приложение, которое позволит вам использовать Push-уведомление Apple и Apple In App Purchase . Вам нужно будет создать идентификатор приложения, который является уникальным идентификатором приложения. Я бы всегда рекомендовал , чтобы вы использовали уникальные идентификаторы для своих приложений. Это спасет вас от головной боли в будущем.

Для пояснения ниже приведены уникальные идентификаторы

  • com.companyname.appname (предпочтительное соглашение об именах для уникальных идентификаторов приложений)
  • appname.companyname
3 голосов
/ 16 декабря 2009

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

То есть, если идентификатор пакета старого приложения был com.yourcompany.myapp и подписан сертификатом com.yourcompany. *, Вы просто создаете новый сертификат com.yourcompany.myapp, но оставляете идентификатор пакета приложения так же, как и раньше.

...