Ошибка знака кода с Xcode 3.2 - PullRequest
       63

Ошибка знака кода с Xcode 3.2

31 голосов
/ 11 сентября 2009

У меня была полностью рабочая среда сборки до обновления до iPhone OS 3.1 и Xcode 3.2. Теперь, когда я пытаюсь сделать сборку, я получаю следующее:

Ошибка кода: в профиле обеспечения «Тест FooApp» указан идентификатор приложения «no.fooapp.iphoneapp», который не соответствует текущему параметру «TGECMYZ3VK.no.fooapp.iphoneapp»

Проблема в том, что Xcode каким-то образом удается думать, что в профиле обеспечения «FooApp Test» указан идентификатор приложения «no.fooapp.iphoneapp», но это не так.

В Организаторе (и на веб-сайте портала разработчиков iPhone) идентификатор приложения правильно отображается как «TGECMYZ3VK.no.fooapp.iphoneapp».

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

Что может быть причиной этой проблемы?

Обновление: я пытался создать новый профиль обеспечения, но все равно не повезло. Я также попытался просто изменить приложение, указанное в Info.plist, на «no.fooapp.iphoneapp». Сборка прошла успешно, но теперь я получаю сообщение об ошибке от Организатора:

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

Это кажется разумным, поскольку профиль обеспечения все еще имеет идентификатор приложения "TGECMYZ3VK.no.fooapp.iphoneapp".

Я также дважды проверил, что все сертификаты действительны в цепочке для ключей.

Итак, мой вопрос: как мне заставить Xcode увидеть правильный идентификатор приложения?

ОБНОВЛЕНИЕ: Как указано ниже, проблема, по-видимому, устраняется путем удаления всех профилей обеспечения, сертификатов и т. Д., Создания новых сертификатов / профилей и их повторной установки. Если у кого-то есть другие решения, они будут приветствоваться. :)

Ответы [ 16 ]

21 голосов
/ 09 октября 2009

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

Это в настройках -> Общие -> Профили

Это случилось со мной, когда я приобрел новый Mac. Вы исправите это, не волнуйтесь

16 голосов
/ 17 сентября 2009

Что ж, как и в случае многих проблем с подписью кода, удаление всех профилей обеспечения, сертификатов и т. Д., А также отмена и генерация всего заново оказались полезными. Я даже создал новый идентификатор пакета, идентификатор приложения и т. Д., И теперь рассылка AdHoc снова работает.

5 голосов
/ 12 ноября 2010

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

5 голосов
/ 16 февраля 2010

Также убедитесь, что вы добавили ссылку на имя файла с правами "dist.plist" в конфигурации своего проекта CODE_SIGN_ENTITLEMENTS.

5 голосов
/ 16 октября 2009

У меня была такая же ошибка вчера. Я попробовал все различные процедуры сброса в других ответах без удачи. В конце концов я также

  • перезагрузил мой мак
  • перезагрузил мой iPhone
  • удалил все телефонные профили iphone с телефона с помощью XCode
  • удалил все профили с моего mac (~ / Library / MobileDevice / Provisioning Profiles for me)
  • что еще? удалил папку сборки, перезапустил XCode, установил обновление до 3.1.2 sdk, принес в жертву курицу.

И вот, теперь это работает, ошибка исчезла. Это серьезная территория вуду.

4 голосов
/ 11 сентября 2009

В XCode на панели «Группы и файлы» разверните «Цели» и дважды щелкните по цели вашего приложения.

Откроется информационная панель для вашей цели. В разделе «Сборка» проверьте раздел «Подписывание кода» на наличие старых профилей. Это случалось со мной много раз, особенно после обновления до новой версии SDK и iphone OS

2 голосов
/ 06 марта 2012

Быстрый взлом, если вы используете Xcode 4.3.

В Xcode под Настройки проекта> MyTarget> вкладка «Сводка» внизу есть флажок «Включить права». Когда я снял флажок, ошибка исчезла.

1 голос
/ 13 января 2012

Устройство может отсутствовать в списке. Попробуйте изменить свой профиль обеспечения.

1 голос
/ 04 августа 2011

Внутри Resources / Entitlements.plist есть логическое «get-task-allow», если это не проверено, отметьте его ON. Это исправило проблему для меня.

1 голос
/ 12 января 2010

После того, как я какое-то время был озадачен этим, я снова просмотрел настройки и обнаружил, что изменил записи «Идентификация подписи кода» и «Любое устройство iPhone OS». - Ключ, который я имел к этому случаю, был показан.

  1. Удаление каждого профиля с телефона
  2. Build and Go

В этот момент xcode пытается подготовить телефон (устройство)

  1. Проверьте телефон, чтобы узнать, какой профиль был добавлен.

Когда я поставил перед всеми своими профилями префикс «AdHoc», «Development» или «AppStore», я сразу увидел, что в процессе установки на устройстве создается профиль разработки, а не AdHoc.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...