Как не отображать логи в выводе Xcode, но при этом отправлять их в отчеты Hockeyapp

Я использую Hockeyapp для отчетов о сбоях и сбора журналов при сбое приложения. Используя метод ниже.

- (void)setupLumberjack {
    // Configure CocoaLumberjack
    [DDLog addLogger:[DDASLLogger sharedInstance]];
    [DDLog addLogger:[DDTTYLogger sharedInstance]];

    // Initialize File Logger
    // initialize before HockeySDK, so the delegate can access the file logger!
    _fileLogger = [[DDFileLogger alloc] init];
    _fileLogger.maximumFileSize = (1024 * 128); // 128 KByte
    _fileLogger.logFileManager.maximumNumberOfLogFiles = 5;
    [_fileLogger rollLogFileWithCompletionBlock:nil];
    [DDLog addLogger:_fileLogger];
}

Установка уровня журнала:

static const int ddLogLevel = LOG_LEVEL_ALL;

Теперь я хотел бы, чтобы ВСЕ уровни журнала все еще отправлялись в отчеты Hockeyapp, но превышали ЛЮБОЙ вывод в консоли xcode.

Как я могу этого достичь? Вероятно, что-то здесь не хватает.

Использование версии 1.9.2, но при желании обновить до 2.x

2 ответа

Журналы XCode всегда отображаются в консоли XCode.
У вас нет возможности отключить их.

Но вы можете скрыть окно вывода:P

Вы также можете установить собственные флаги компилятора для ваших настроек сборки отладки.

Затем вы код DLog() макрос, который будет эхом NSLog() только если этот флаг есть => только при отладке с Xcode.
При этом пользователи не будут иметь никакого входа в систему на своем устройстве.

Ответ, который я искал, был опубликован в комментарии.

Простое удаление этой строки сделало свое дело:[DDLog addLogger:[DDTTYLogger sharedInstance]];

Другие вопросы по тегам