ГРЕШКА: Пакетът приложения не съдържа валиден идентификатор

Получавам тази грешка „Пакетът с приложения не съдържа валиден идентификатор“, след като приложението ми се компилира успешно. Тази грешка пречи на играта ми да се стартира на телефона или симулатора. Нямам представа как да поправя това, тъй като следвах този урок Как да си направим игра за космически шутър за iPhone с помощта на Cocos2d.


person lampShade    schedule 20.05.2011    source източник


Отговори (7)


в моя случай (работа с fastpdfkit, след 3-минутен tut), Info.plist не беше копиран в пакета. трябваше ръчно (повторно) да го добавя в „Buildphase > Copy Bundle Resources“

person thumbsup    schedule 13.12.2011

Проблемът, който причиняваше това съобщение за грешка за мен, беше, че имах папка, наречена „Ресурси“:

Тази грешка може също да бъде причинена, ако вашият проект има поддиректория, наречена „Ресурси“; и евентуално други специални имена, в които не съм се спъвал. - източник

Освен това имах липсващ файл -Info.plist от Buildphase (благодарение на thumbsup за неговия отговор по-горе).

person lindon fox    schedule 20.04.2012

изтриване на път DerivedData ~/Library/Developer/Xcode/DerivedData

person itlijunjie    schedule 29.11.2016

Това може да се дължи на факта, че идентификаторът на пакета съдържа невалидни знаци или няма знаци в него. Идентификаторът на пакета се намира във файла Info.plist.

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

Идентификационният низ на пакета идентифицира вашето приложение към системата. Този низ трябва да бъде унифициран тип идентификатор (UTI), който съдържа само буквено-цифрови (A-Z,a-z,0-9), тире (-) и точка (.) знаци. Низът също трябва да бъде в обратен DNS формат. Например, ако домейнът на вашата компания е Ajax.com и създадете приложение с име Hello, можете да присвоите низа com.Ajax.Hello като идентификатор на пакета на вашето приложение. Идентификаторът на пакета се използва при валидиране на подписа на приложението. източник (разработчик на Apple)

Това също може да бъде от полза:

Идентификатор, използван от iOS и Mac OS X за разпознаване на бъдещи актуализации на вашето приложение. Вашият Bundle ID трябва да бъде регистриран в Apple и уникален за вашето приложение. Идентификационните номера на пакета са специфични за типа приложение (или iOS, или Mac OS X). Един и същи ID на пакет не може да се използва както за приложения за iOS, така и за Mac OS X. източник

Това донякъде е двойна публикация - публикувах същия отговор на gamedev.stackexchange.com.

person CiscoIPPhone    schedule 20.05.2011

По някаква причина Xcode премахна файла Info.plist от целта на приложението.

  1. Изберете Info.plist в навигатора на проекта

Навигатор на проекти

  1. Поставете отметка в квадратчето за вашето приложение

Целево членство

  1. Почистване + Изграждане + Изпълнение
person Shiyason    schedule 16.09.2017

Имах същия проблем. Ето как се реши:

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

Надявам се това да помогне.

person Misha Karpenko    schedule 27.02.2015

В моя случай обикновена чиста опция-команда-К и shift-опция-команда-К свършиха работа.

person drew..    schedule 06.06.2018