Прежде чем ответить на ваши вопросы несколько определений:
Bundle ID: Обратный DNS строка, которая точно идентифицирует одно приложение.
Группа поиска идентификатора пакета: используется для сопоставления набора идентификаторов пакетов, где каждый идентификатор пакета идентифицирует одно приложение. Например, если строка поиска ID пакета равна com.mycompany.MyApp
или подстановочный знак, такой как com.mycompany.*
, то он будет соответствовать идентификатору пакета com.mycompany.MyApp
.
ID приложения: Строка, которая идентифицирует одно или несколько приложений из одной команды. Идентификатор приложения состоит из строки поиска пучка ID, которой предшествует ID команды, 10-символьная строка, сгенерированная Apple, чтобы однозначно идентифицировать команду. В technical note, который вы связываете, это ABCDE12345
и называется идентификатором семени Bundle.
(Development) Provisioning Profile: вы используете его для авторизации своего приложения для запуска на устройствах и использования определенных технологий хранения при разработке. Он состоит из: одного идентификатора приложения, набора устройств и набора сертификатов разработки. Профили подготовки создаются в Центре-члене, и вы нуждаетесь в них на своем устройстве для запуска своего приложения. XCode может загружать профили подготовки и устанавливать их на устройства.
Теперь я буду отвечать на ваши пули:
- Для использования Game-Center (GameKit) и IAP вам нужен явного идентификатор приложения, то есть и App ID с расслоения ID строкой поиска в у которого нет *. A wild-card ID приложения - это код, в котором находится строка поиска пучка, у которой есть *, и это тот, который у вас есть сейчас.
- Первоначально вы создаете идентификатор приложения с соответствующим идентификатором пакета. Если он явный, вы можете добавить Game-Center и IAP, если это идентификатор приложения подстановочного знака ... это все.
- У вас не может быть двух приложений с разными именами, но с тем же явным идентификатором приложения или идентификатором пакета. Но у вас могут быть два приложения с разными именами, которые не используют Game-Center или IAP с уникальным идентификатором приложения, используя идентификатор приложения подстановочного знака.
- Вы спрашиваете, почему шаблон полезен ... Ну, я сказал, что если вы не используете Game-Center или IAP, у вас могут быть два или более приложения, связанные с идентификатором приложения подстановочного знака. Затем вы можете создать профиль обеспечения с помощью этого идентификатора приложения, и вам нужно только установить этот профиль подготовки на своих устройствах для всех ваших приложений. Существует профиль профилей по умолчанию этого типа, который называется профилем Provisioning Profile , который действителен для всех ваших приложений, но вы можете создать более конкретные, которые действительны для подмножества всех ваших приложений.
Этот процесс действительно полезен для больших команд. Если у вас небольшая команда и несколько приложений, это действительно сбивает с толку, но это помогает понять причины этого.
Но есть еще сказать обо всем этом. Я рекомендую вам прочитать «App Distribution Guide», как я это делал недавно. Это обширный справочник, но на данный момент вам нужно только прочитать разделы темы «Maintaining Your Signing Identities and Certificates» и «Maintaining Identifiers, Devices, and Profiles». Руководство очень четкое, полное скриншотов, и оно ответит на все ваши вопросы.Также вы можете вернуться к руководству по дороге, чтобы быстро решить какую-то проблему (и у вас будут проблемы).
Впервые, когда я создал приложение с Game-Center и IAP более года назад, я просмотрел stackoverflow, чтобы ответить на все мои вопросы. Но у меня были проблемы с истечением срока действия сертификатов, когда я добавлял новые устройства и т. Д., И каждый раз, когда я находил их, и решение Ad-hoc после многого разворачивания и возврата к stackoverflow. Не поймите меня неправильно, есть отличные ответы в stackoverflow, но в моем опыте гораздо лучшая стратегия читать что-то более длинное, что объясняет большую картину. Идентификатор приложения, идентификаторы пакетов, сертификаты, закрытые ключи и т. Д. - это грязный вопрос, особенно если вы не понимаете, почему он построен таким образом.
Спасибо Robotillo, я принял ваш ответ, поскольку он был более полным. – mm24
«почему он построен таким образом», ответ меняет ваше восприятие – carelesslyChoosy