ОШИБКА: комплект приложения не содержит действительный идентификатор - PullRequest
11 голосов
/ 20 мая 2011

Я получаю эту ошибку «Пакет приложения не содержит действительного идентификатора» после успешной компиляции приложения. Эта ошибка не позволяет запустить мою игру на телефоне или на симуляторе.Я понятия не имею, как это исправить, поскольку я следовал этому уроку Как сделать космическую стрелялку для iPhone с использованием Cocos2d.

Ответы [ 7 ]

11 голосов
/ 13 декабря 2011

в моем случае (работа с fastpdfkit после 3-минутной паузы) Info.plist не был скопирован в пакет.мне пришлось вручную (повторно) добавить его в «Buildphase> Copy Bundle Resources»

8 голосов
/ 20 апреля 2012

Проблема, которая вызывала для меня это сообщение об ошибке, заключалась в том, что у меня была папка «Ресурсы»:

Эта ошибка также может быть вызвана, если в вашем проекте есть подкаталог с названием «Ресурсы»; и, возможно, другие специальные имена, которые я не споткнулся. - источник

У меня также отсутствовал файл -Info.plist в Buildphase (спасибо thumbsup за его ответ выше ).

6 голосов
/ 29 ноября 2016

удалить путь к производным данным ~/Library/Developer/Xcode/DerivedData

4 голосов
/ 20 мая 2011

Это может быть связано с тем, что в идентификаторе пакета содержатся недопустимые символы или отсутствуют символы. Идентификатор пакета находится в файле Info.plist.

Вот то, что составляет действительный идентификатор пакета приложения:

Строка идентификатора пакета идентифицирует вашу заявку на система. Эта строка должна быть равномерной идентификатор типа (UTI), который содержит только буквенно-цифровой (A-Z, a-z, 0-9), дефис (-) и точка (.). Строка также должна быть в формат обратного DNS. Например, если Домен вашей компании - Ajax.com и вы создаете приложение с именем Hello, Вы можете назначить строку com.Ajax.Hello как приложение идентификатор пакета. Расслоение идентификатор используется при проверке подпись приложения. источник (разработчик Apple)

Это также может быть полезно:

Идентификатор, используемый iOS и Mac OS X распознавать любые будущие обновления ваше приложение. Ваш идентификатор пакета должен быть зарегистрирован в Apple и уникален для ваше приложение. Идентификаторы пакетов имеют тип приложения специфический (либо iOS, либо Mac OS X). один и тот же идентификатор пакета не может быть использован для обоих Приложения для iOS и Mac OS X. источник

Это что-то вроде двойного поста - тот же ответ я разместил на gamedev.stackexchange.com .

2 голосов
/ 17 сентября 2017

По какой-то причине Xcode удалил файл Info.plist из целевого приложения.

  1. Выберите Info.plist в Навигаторе проекта

Project Navigator

Установите флажок для своего приложения

Target Membership

Очистить + построить + запустить
1 голос
/ 27 февраля 2015

Была такая же проблема. Вот как она решила сама:

  1. Удалите все ваши расширения из Build Phases > Target Dependencies и Build Phases > Embed App Extensions этапов.
  2. Выполнить Product > Clean.
  3. Попробуйте скомпилировать. Для меня это сработало без нареканий.
  4. Добавьте свои расширения по одному и сделайте Product > Clean + Product > Run после добавления каждого из них.

Надеюсь, это поможет.

0 голосов
/ 06 июня 2018

В моем случае, простые чистые option-command-K и shift-option-command-K сделали свое дело.

...