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

Расширение iOS8 нуждается в собственном профиле подготовки?

Я запускаю расширение iOS 8, но я не могу запустить его на своем устройстве. Ошибка при попытке запуска:

Не найдено подходящих профилей подготовки

Профиль подготовки, указанный в настройках сборки ( "ExtensionName" ), имеет AppID net.company.AppName, который не соответствует идентификатору вашего пакета net.company.AppName.ExtensionName. Xcode может решить эту проблему, загрузив новый профиль обеспечения из Центра участников.

  • Нужен ли мне отдельный профиль подготовки как для основного приложения, так и для расширения?
  • Если они делят идентификатор пакета (по умолчанию он добавляет имя расширения в идентификатор пакета, возможно, нет)?
  • Если у него есть отдельный идентификатор пакета, как это отражается в профиле подготовки (если есть отдельный)?
4b9b3361

Ответ 1

Казалось бы, Xcode предпочтет это таким образом, однако ничто не мешает вам использовать подстановочный профиль, пока вы не захотите сделать Adhoc или Release в App Store. Тем не менее, для каждой вашей цели вам нужен профиль и идентификатор пакета. Так что да, вам нужен "другой" профиль обеспечения для вашего расширения, хотя я ожидаю, что Apple упростит этот процесс.

В целом, возможно, лучше всего использовать профиль профиля WildCard, пока вам не понадобится профиль подготовки. Помните, что это бета-версия, и они все еще работают над всем.

Ответ 2

Я разместил эту документацию, относящуюся к Расширения приложений. Если вы прочитаете нижнюю часть страницы 20, если кажется, что использование того же сертификата распространения действительно предлагается. Я пошел дальше и изменил идентификатор пакета для Today Extension для расширения моих приложений. Например, com.DeveloperName.AppName.TodayExtension, создал идентификатор приложения в Dev Center, чтобы соответствовать ему, и создал для него профиль распространения. Мое приложение +Quotes успешно обновлено, выполнив следующие шаги. Я не испытывал никаких проблем с приложением или расширением, но Xcode, похоже, немного запутался, пытаясь автоматически назначить правильные профили подготовки для моего расширения. Выбор их вручную разрешает это.

Ответ 3

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

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

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

Ответ 4

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

Также выберите профиль обеспечения в целевом объекте вашего расширения.

введите описание изображения здесь