Как мне получить аргумент CoreData Debug для вывода на консоль?
Вопрос
В соответствии с Документация Apple по отладке Core Data в нем говорится, что мы должны иметь возможность передать аргумент приложению, которое будет выводить основные данные SQL, отправляемые в SQLite.
Я перешел на вкладку аргументов моего исполняемого файла в XCode и указал аргументы:
-com.apple.CoreData.SQLDebug 1
Однако я не вижу SQL в консоли.Затем я попытался использовать этот параметр в приложении CoreDataBooks, предоставленном Apple, на случай, если в МОЕЙ программе возникнет другая проблема.
Даже в примере Apple я не получаю вывода SQL в консоли.
Я делаю что-то неправильно?Документация Apple неверна?Должен ли я искать где-то еще, кроме консоли?Кто-нибудь еще добился успеха с этим аргументом?
ОБНОВЛЯТЬ: С тех пор Apple исправила ошибку вывода в новых версиях XCode;однако, чтобы прояснить окончательное решение:
Аргументы представляют собой два отдельных аргумента, и их следует вводить на вкладке аргументов как таковые.-com.apple.CoreData.SQLDebug — это один параметр, а значение 1 — второй параметр.
Решение
XCode 4 (окончательный) кажется непоследовательным.
Использование одного аргумента работает на устройстве, но не работает в симуляторе:
-com.apple.CoreData.SQLDebug 1
Использование двух аргументов работает на устройстве и в симуляторе:
-com.apple.CoreData.SQLDebug
1
Другие советы
Вы вводите это как один аргумент? Должно быть 2 аргумента: " -com.apple.CoreData.SQLDebug " и "1".
Дополнительная информация: Вы на самом деле отменяете " default " Вот. Ознакомьтесь с Документы Apple об аргументах по умолчанию для получения дополнительной информации. Вы увидите, что имя и значение являются двумя отдельными аргументами.
Я тоже долго бился об это. Оказывается, SQLDebug с Core Data еще не поддерживается на iPhone. Он отслеживается идентификатором ошибки Apple 6868205 / а>. р>