Info.plist格式不正确。

11

我正在进行我的iOS Xcode项目,一切都很顺利,但突然间当我尝试运行它时,我开始收到下面的错误:

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

我真的很困惑。我看了过去的StackOverflow问题,仍然无法解决这个问题。有没有办法只生成一个新的infoplist文件?你们认为呢?


3
有时候,如果您在源代码控制中的此文件中遇到合并冲突,就会发生这种情况。在这种情况下,请在纯文本编辑器中打开该文件,并查找来自源代码控制的标记,这些标记通常以"<<<<<<<<"开头,以">>>>>>>>>>>"结尾。 - Bek
你能发布一下你的 info.plist 文件内容吗? - NobodyNada
4个回答

25

我遇到了同样的错误,花了很长时间才找出解决方法。以下是我的做法:

  • 打开终端
  • 导航到 plist 文件所在的位置,例如 cd /user/desktop/app/Runner/info.plist
  • 然后使用 plutil 命令,如下所示:plutil info.plist

这将显示错误的位置,您可以进行更正。希望这有所帮助。


2
同意 - 这是许多潜在问题的最有帮助的解决方案。我的最新问题是在第2587行出现了空的<integer>。 - DrWhat
2
这应该是正确/最佳答案。花了几秒钟就找到了我那个有2000行的plist文件中的错误,而我之前已经花了20分钟逐行查找问题。我的plist文件是一个员工目录,是从数据库自动生成的,其中一个键缺少了一个字符串值。 - MB Stephenson

8

plist文件是一个XML文档,采用严格规定的格式;XML和属性列表结构都有非常严格的规则。如果你尝试手动编辑info.plist(即以文本形式),例如选择 Open As > Source Code,你很容易出错:

enter image description here

你可能无法正确地呈现这种格式。因此,你应该始终通过 Open As > Property List 来编辑info.plist:

enter image description here

这将使属性列表编辑器为你生成XML,并且在结果中,它不太可能犯下错误。当然,我想你还是可能弄错某些内容的值...


你很可能无法正确地得到这种格式,那么什么才被认为是正确的XML格式呢? - Daniel Storm
属性列表编辑器的问题在于无法添加注释。至少我没有找到任何方法来添加注释,以解释为什么要进行一些更奇特的设置。你只需要非常小心地保持结构中开/闭标签的结构-我刚花了一个小时进行这项工作,因为我通过复制/粘贴将某个部分移动到下面,但是然后没有删除其中一个移动的行,导致不平衡和更多的Xcode“真的吗?”的挫败感。 - Colin
即使您更改变量名称,例如:从string更改为String,仍可能发生这种情况。 - saintjab
2
这种情况发生在我身上,是由于一个已提交的合并冲突引起的。-.- - Lukas Würzburger
1
这是一个正确的答案吗?也许是原因,但不是解决方案。 - L33MUR
显示剩余2条评论

7

我曾经遇到过同样的问题,那是因为plist文件不喜欢&符号。你必须使用&amp;代替它。


1
你为我节省了几个小时的时间。 - Dima

3

我曾经遇到合并冲突的问题,但当时没有意识到。因此,在文件中出现了Git注释。我无法将其作为属性列表打开,但我以源代码的形式打开并解决了该问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接