我只是用 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,小牛队
我只是用 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,小牛队
这是检测错误发生在哪条线上的最佳方法之一。
只需转到 plist 文件所在的目录,然后在终端上编写此命令->
plutil filename.plist
此问题的另一个原因可能是尝试将 URL(实际上只是斜杠等)放入您的 app-Info.plist。
只需在项目构建设置-traditional
中的选项内提高标志即可绕过它。Info.plist Other Preprocessor Flags
我想你已经使用了源代码控制工具,你可以在没有 Xcode 的情况下使用基本的文本编辑工具来打开这个 plist,command + F 找到“<<<<<”或“>>>>>”,那么你可能会查找错误字符串,例如:
<<<<<<< .mine
>>>>>>> .r605
选择正确的字符串,删除另一个,错误解决!
当 git merge 引发冲突时,我个人破坏了文件。.plist 是一个 XML 文件,并且 git 冲突在其中添加了 <<<< 和 >>>> 以标记差异。
在 Finder 中找到 .plist 文件(在您的项目文件夹之一中)。在文本编辑器中打开它,找到看起来不像正确 XML 的行,删除它们并确保删除重复的 XML 行/节点(由于前后 git 记录的更改)。
看起来像用备份替换文件,然后在 Organizer 中删除项目的派生数据是解决办法。希望这对以后的其他人有所帮助。
在为 iOS 构建时,只要将 Default Orientation 设置为 Auto Rotation,Info.plist 就可能会损坏。Info.plist 文件在第一次构建时正确创建,但后续构建会导致...
<key>UIInterfaceOrientation</key>
<string></string>
</string>
...此时 Xcode 无法构建项目。
这也可能只是因为您已将 Info.plist 文件移动到新文件夹中,或将其从文件夹中删除(基本上,如果其路径已更改)。
转到构建设置并搜索“Info.plist 文件”。编辑值。例如,如果您已将 plist 文件从主文件夹移动到名为 Resources 的子文件夹,则必须进行以下更改:
前:
TargetName/Info.plist
后:
TargetName/Resources/Info.plist
我遇到了同样的错误,并意识到问题是http://example.com/something
我的 Info.plist 中有一个 URL(例如)作为值,而我刚刚打开了它的预处理(没有-traditional
标志)。显然 Xcode 会将 视为//
注释标记,并省略该行的其余部分。
我发现的一种解决方法是采用预处理器,如下所示:
http:/${}/example.com/something
,它通过在中间放置一个空字符串 substation 来分解//
它,因此它看起来不像 Xcode 的注释,但在预处理后它又回来到一个普通的 URL。