Как использовать разные типы входа в xcode - PullRequest
1 голос
/ 25 июля 2011

Я хотел бы знать, сколько типов od log и когда использовать какой тип log. До сих пор я использовал NSLog, но когда я, наконец, отправляю приложение в магазин приложений, мне нужно искать nslog и нужно закройте их все. Я слышал о Dlog, Alog, но не знаю, как его использовать. Итак, есть ли какое-либо решение, которое установило бы Log-off, когда мы выбираем release, debug mode. Было бы здорово, если бы вы могли предоставить мне код для diff-log. типы и как их использовать.

Ответы [ 2 ]

8 голосов
/ 25 июля 2011

Вы можете определить макросы всего проекта в вашем файле <project>.pch.Например:

#if DEBUG
#define DLog(format, ...) NSLog((format), ## __VA_ARGS__)
#else
#define DLog(format, ...)
#endif

(Предполагается, что вы устанавливаете макрос DEBUG в своих сборках отладки: Существует ли макрос, который Xcode автоматически устанавливает в сборках отладки? )

Тогда вы можете использовать DLog везде, где вы использовали NSLog для сообщений, которые должны появляться только в ваших отладочных сборках, в ваших сборках выпуска они пропадут.

Более сложные версии можно найти вответы на вопрос: Как распечатать имя метода и номер строки и условно отключить NSLog?

Также вы можете свернуть свой собственный класс ведения журнала .

2 голосов
/ 25 июля 2011

Я думаю, что вы пытаетесь отключить NSLogs в вашей финальной сборке. Вот решение, которое было опубликовано ранее:

    #ifdef DEBUG
#   define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#else
#   define DLog(...)
#endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...