错误:应用程序包不包含有效的标识符
我得到这个错误“应用程序包不包含有效的标识符”后,我的应用程序成功编译。这个错误阻止我的游戏启动在手机或模拟器。 我不知道如何解决这个问题,因为我正在学习如何使用Cocos2d 制作太空射击游戏 。
在我的情况下(使用fastpdfkit,在3分钟内完成),Info.plist没有被复制到bundle中。 我不得不手动(重新)将它添加到“Buildphase> Copy Bundle Resources”
导致这个错误信息的问题是我有一个名为“资源”的文件夹:
如果你的项目有一个名为'Resources'的子目录,也会导致这个错误。 还有可能还有我没有绊倒的其他特殊名字。 – 来源
我也有从-Info.plist
文件丢失(感谢他的答案上面的赞)。
删除DerivedDatapath~/Library/Developer/Xcode/DerivedData
这可能是因为软件包标识符中包含无效字符或没有字符。 包标识符在Info.plist文件中find。
这是一个有效的应用程序包标识符的定义:
捆绑包标识符string标识您的应用程序到系统。 该string必须是只包含字母数字(AZ,az,0-9),连字符( – )和句点(。)字符的统一types标识符(UTI)。 该string也应该是反向DNS格式。 例如,如果您公司的域是Ajax.com,并且您创build了一个名为Hello的应用程序,则可以将stringcom.Ajax.Hello指定为应用程序的包标识符。 包标识符用于validation应用程序签名。 来源(苹果开发者)
这也可能是有用的:
iOS和Mac OS X使用的标识符,用于识别将来对应用程序进行的更新。 您的套件ID必须在Apple注册并且是您的应用程序所独有的。 捆绑ID是应用types特定的(iOS或Mac OS X)。 iOS和Mac OS X应用程序无法使用相同的捆绑ID。 资源
这是一个双重的post – 我在gamedev.stackexchange.com发布了相同的答案。
有同样的问题。 这就是它自己解决的方法:
- 从
Build Phases > Target Dependencies
和Build Phases > Embed App Extensions
阶段中删除所有Build Phases > Embed App Extensions
。 - 运行
Product > Clean
。 - 尝试编译。 对我来说,它工作完美无瑕。
- 逐个添加您的扩展,并在添加每个扩展后执行
Product > Clean
+Product > Run
。
希望这可以帮助。
出于某种原因,Xcode从应用程序目标中删除了Info.plist文件。
- 在Project Navigator中select
Info.plist
- 勾选您的应用程序框
- 清理+生成+运行