Подтвердить что ты не робот

Могу ли я изменить идентификатор Bundle в своем приложении после его утверждения?

У меня есть приложение, одобренное некоторое время назад, и использовал профиль * подготовки, поэтому я создал somehting, например:

com.mydomain.MyApp

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

Как я могу продолжить обновление приложения, не нарушая ничего

4b9b3361

Ответ 1

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

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

Раньше была статья Apple об этом: но он больше не доступен онлайн Однако архив доступен.

Ответ 2

Вы не можете изменить CFBundleIdentifier выпущенного приложения, если вы хотите опубликовать обновления для него, App Store автоматически отклонит его при загрузке. Так что...

Мне нужно было включить iAds в приложении, ранее разработанном с помощью идентификатора приложения с подстановочным знаком. Вот что я сделал:

У меня есть идентификатор приложения wildcard <AlphaNumeric>.*, который в настоящее время используется моим приложением, а мое приложение имеет CFBundleIdentifier of com.companyname.mygame.

Создал новый идентификатор приложения <AlphaNumeric>.com.companyname.mygame.

Созданы новые профили обеспечения разработки и распространения, которые включают новый идентификатор приложения.

Загрузите новые профили подготовки к Xcode и моим устройствам.

Затем я смог скомпилировать приложение с новым профилем распределения без подстановки, что означало при загрузке, что я мог бы включить iAds (или нажать для вас). CFBundleIdentifier не изменился, поэтому новая компиляция отображается как обновление существующего приложения.

Я могу подтвердить, что этот процесс работал без проблем.

Ответ 3

В разделе "Часто задаваемые вопросы" в документе под названием "Техническая нота TN2259", который представляет собой "Добавление покупок в приложениях к приложениям iOS и Mac", этот бит

Вопрос: В настоящее время мое приложение iOS подписано с профилем Provisioning Profile который использует идентификатор приложения подстановочного знака. Как включить мой идентификатор приложения Покупки в приложении?

Ответ: прочитайте раздел "Создание и настройка идентификаторов приложений" руководство по администрированию iOS, чтобы узнать, как вы можете включить свое приложение ID для поддержки покупки в приложении.

Здесь указаны ссылки здесь, а также раздел "Обновление вашего приложения для включения APNS, iCloud, покупки в приложении или игры Центр требует яркого идентификатора приложения"

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

Изменить: Явный идентификатор приложения влияет только на часть программного обеспечения, которое вы тестируете, и, по сути, ничего общего с iTunes Connect не имеет. Это означает, что если вы тестируете покупки в приложениях, часть программного обеспечения, которое работает (ваше приложение), должно иметь профиль предоставления, основанный на сертификате, специфичном для приложения. Что происходит в iTunes Connect, совершенно не имеет значения.