Ответ 1
Похоже на замену файла резервной копией, а удаление данных для проекта в Organizer было излечением. Надеюсь, это поможет кому-то еще позже.
Я просто ударил кирпичную стену с 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, Mavericks
Похоже на замену файла резервной копией, а удаление данных для проекта в Organizer было излечением. Надеюсь, это поможет кому-то еще позже.
Это один из лучших способов определить, на какой строке происходит ошибка.
Просто перейдите в каталог, в котором присутствует файл plist, и напишите эту команду на терминале →
plutil filename.plist
Другой причиной этой проблемы может быть попытка поместить URL-адреса (на самом деле просто слэш и т.д.) в ваш app-Info.plist.
Обходите это, просто поднимая флаг -traditional
внутри параметра Info.plist Other Preprocessor Flags
в настройках сборки проекта.
Я лично разрушил файл, когда git слияние возникли конфликты..plist - это XML файл и git конфликт добавлен < < < и → → там, чтобы пометить различия.
Найдите файл .plist в Finder (в одной из ваших папок проекта). Откройте его в текстовом редакторе, найдите строки, которые не похожи на правильный XML, удалите их и обязательно удалите дублируемую строку XML/ node (из-за записанных изменений до и после git).
Я думаю, что вы использовали инструменты управления исходным кодом, вы можете использовать основной инструмент для редактирования текста без Xcode, чтобы открыть этот plist, команду + F, чтобы найти "< < < < < < или" → → > ", тогда вы, вероятно, найдете строку ошибок, например:
<<<<<<< .mine
>>>>>>> .r605
выберите правильную строку и удалите другую, ошибка будет решена!
При создании для iOS Info.plist может быть поврежден всякий раз, когда для параметра "Ориентация по умолчанию" установлено значение "Автоматическое вращение". Файл Info.plist создается правильно в первой сборке, но последующие сборки приводят к...
<key>UIInterfaceOrientation</key>
<string></string>
</string>
... в этот момент Xcode не может выполнить проект.
У меня была такая же ошибка, и я понял, что проблема в том, что у меня был URL (например, http://example.com/something
) как значение в моем Info.plist, и я просто включил предварительную обработку для него (без -traditional
). По-видимому, Xcode будет обрабатывать //
как маркер комментария и опустить оставшуюся часть строки.
Обход, который я нашел, заключается в том, чтобы охватить предварительный процессор, например:
http:/${}/example.com/something
, который разбивает //
, помещая пустую подстанцию строки посередине, поэтому она не похожа на комментарий к Xcode, а после предварительной обработки ее обратно на обычный URL.
У меня была такая же ошибка, в соответствии с методом @Vizllx, все еще ошибка. Затем я использую Sublime Text для открытия info.plist, обнаружив, что конфликт кода.
Лучший способ определить ошибку - открыть в редакторе XML, и вы знаете, где все идет не так.