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