38

我只是用 xCode 打了一堵砖墙,不想解析我的 Info.plist 文件。我已经用之前备份的旧(相同)版本的文件替换了该文件几次,但我仍然遇到同样的错误。

这是完整的错误消息:

couldn't parse contents of '/Users/...Info.plist': The data couldn’t be read because it isn’t in the correct format.

我对这个一无所知。我正在使用 xCode 5.0.1,小牛队

4

8 回答 8

81

这是检测错误发生在哪条线上的最佳方法之一。

只需转到 plist 文件所在的目录,然后在终端上编写此命令->

plutil filename.plist
于 2015-09-10T06:40:00.033 回答
15

此问题的另一个原因可能是尝试将 URL(实际上只是斜杠等)放入您的 app-Info.plist。

只需在项目构建设置-traditional中的选项内提高标志即可绕过它。Info.plist Other Preprocessor Flags

在此处输入图像描述

于 2014-01-13T22:50:43.690 回答
4

我想你已经使用了源代码控制工具,你可以在没有 Xcode 的情况下使用基本的文本编辑工具来打开这个 plist,command + F 找到“<<<<<”或“>>>>>”,那么你可能会查找错误字符串,例如:

<<<<<<< .mine

>>>>>>> .r605

选择正确的字符串,删除另一个,错误解决!

于 2016-10-28T02:51:27.417 回答
2

当 git merge 引发冲突时,我个人破坏了文件。.plist 是一个 XML 文件,并且 git 冲突在其中添加了 <<<< 和 >>>> 以标记差异。

在 Finder 中找到 .plist 文件(在您的项目文件夹之一中)。在文本编辑器中打开它,找到看起来不像正确 XML 的行,删除它们并确保删除重复的 XML 行/节点(由于前后 git 记录的更改)。

于 2015-02-25T13:38:51.830 回答
2

看起来像用备份替换文件,然后在 Organizer 中删除项目的派生数据是解决办法。希望这对以后的其他人有所帮助。

于 2013-10-28T18:19:04.483 回答
1

在为 iOS 构建时,只要将 Default Orientation 设置为 Auto Rotation,Info.plist 就可能会损坏。Info.plist 文件在第一次构建时正确创建,但后续构建会导致...

<key>UIInterfaceOrientation</key>
<string></string>
</string>

...此时 Xcode 无法构建项目。

于 2014-02-04T22:49:38.780 回答
1

这也可能只是因为您已将 Info.plist 文件移动到新文件夹中,或将其从文件夹中删除(基本上,如果其路径已更改)。

转到构建设置并搜索“Info.plist 文件”。编辑值。例如,如果您已将 plist 文件从主文件夹移动到名为 Resources 的子文件夹,则必须进行以下更改:

前:

TargetName/Info.plist

后:

TargetName/Resources/Info.plist
于 2020-10-13T05:54:29.743 回答
0

我遇到了同样的错误,并意识到问题是http://example.com/something我的 Info.plist 中有一个 URL(例如)作为值,而我刚刚打开了它的预处理(没有-traditional标志)。显然 Xcode 会将 视为//注释标记,并省略该行的其余部分。

我发现的一种解决方法是采用预处理器,如下所示: http:/${}/example.com/something,它通过在中间放置一个空字符串 substation 来分解//它,因此它看起来不像 Xcode 的注释,但在预处理后它又回来到一个普通的 URL。

于 2014-09-09T22:53:17.983 回答