Получение предупреждения о правах при создании Ad Hoc Distribution Bundle для приложения Iphone - PullRequest
0 голосов
/ 26 мая 2010

Я следовал инструкциям Apple по созданию пакета Ad Hoc Distrubution, но продолжаю получать то, что кажется фатальным предупреждением в процессе сборки.В соответствии с инструкциями я установил удостоверение подписи в своем профиле распространения в целевой папке (вместо проекта), создал свой файл Entitlement.plist и снял флажок get-task-allow, связал этот файл с моей целью и запустил сборку в дистрибутиведля режима устройства.

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

[WARN]CodeSign warning: entitlements are not applicable for product type 'Application' in SDK 'Device - iPhone OS 3.1.2'; ignoring...

Последний шаг в сборке - это CodeSign, и я заметил, что хотя он и работалбез ошибок пропускается опция командной строки --entitlement, которая указана в официальном руководстве Apple.

Вот моя строка CodeSign

/usr/bin/codesign -f -s "iPhone Distribution: My Name" --resource-rules=/Volumes/Data/projects/xcode/MyAppName/build/Distribution-iphoneos/MyAppName.app/ResourceRules.plist /Volumes/Data/projects/xcode/MyAppName/build/Distribution-iphoneos/MyAppName.app

А вот снимок экрана Apple того, чтоожидается.

здесь http://devimages.apple.com/iphone/images/portal/overview/BuildLog.jpg

Может кто-нибудь, пожалуйста, помогите мне разобраться, если я что-то не так делаю, потому что, к моему ужасу, даже на форуме разработчиков в Apple очень мало информациив этом предупреждении CodeSign.

Ответы [ 2 ]

1 голос
/ 26 мая 2010

Я не читал официальное руководство уже довольно давно, и сейчас мне не очень хочется его искать, но давайте пройдемся по моему контрольному списку. Я подозреваю, что ваша проблема около 5-7.

  1. Запросил сертификат для рассылки Ad Hoc, и он был утвержден.
  2. Создан профиль обеспечения для Ad Hoc распространения для соответствующих идентификаторов устройств и идентификаторов приложений.
  3. Установил сертификаты и профиль обеспечения на ваш компьютер.
  4. Создана новая конфигурация "Ad Hoc" для вашей цели (не требуется, но приятно поддерживать в чистоте). Это можно сделать, продублировав Release.
  5. Добавлен файл Entitlements.plist к вашей цели.
  6. Не отмечен «get-task-allow» в указанном файле «Права».
  7. Введено имя файла Entitlements.plist в настройке сборки «Права подписи кода» в конфигурации Ad Hoc.
  8. Выберите соответствующий профиль обеспечения Ad Hoc в «Любом устройстве iPhone OS» в настройке «Идентификация подписи кода» в конфигурации Ad Hoc.
  9. Сложение.

Ну, я думаю, вот и все. Я что-то пропустил?

0 голосов
/ 27 мая 2010

Победа! Я перепробовал все, что мог, включая реконструкцию своего проекта с нуля, и я не мог сделать эту работу. Я обновил до Xcode 3.2.2, открыл тот же проект и сделал сборку, и она сразу заработала. Я бы хотел, чтобы у Apple была немного лучшая документация о том, для каких версий xcode полезны инструкции, которые есть в Интернете. В любом случае, я надеюсь, что это избавит кого-то от страданий, которые мне пришлось пережить в последние пару дней.

...