Отключить сообщения об ошибках и предупреждения MagicalRecord

Я только начал использовать MagicalRecord, и это может быть глупым вопросом, но этоменя это действительно беспокоит ... Я использую MagicalRecord с sqlite, и когда я запускаю MagicalRecord, я использовал

[MagicalRecord setupCoreDataStackWithStoreNamed:@"OrderSystem.sqlite"];

и это произвело следующие сообщения:

2012-10-16 16: 54: 48.966 Система заказов [4135: c07] + NSManagedObjectContext (MagicalRecord) MR_contextWithStoreCoordinator: -> Создано: Контекст* ОСНОВНАЯ РЕЗЬБА *

Когда я пытался сохранить свою сущность с помощью следующего кода, используя фоновый поток:

[MagicalRecord saveInBackgroundWithBlock:^(NSManagedObjectContext *localContext){        
    Menu *localMenu = [menu inContext:localContext];        
    localMenu.name = menu.name;
    localMenu.menuid = menu.menuid ;        
}];

И я получил следующие сообщения об ошибках:

2012-10-16 17: 05: 20.118 Система заказов [4523: 4603] + MagicalRecord (ErrorHandling) defaultErrorHandler: Сообщение об ошибке: операция не выполненане будет завершено. (Какао ошибка 133000.)

2012-10-16 17: 05: 20.118 Система заказов [4523: 4603] + MagicalRecord (ErrorHandling) defaultErrorHandler: Домен ошибки: NSCocoaErrorDomain

2012-10-16 17: 05: 20.119 Система заказов [4523: 4603] + MagicalRecord (ErrorHandling) defaultErrorHandler: Предложение по восстановлению: (пусто)

2012-10-16 17: 05: 20.119 Система заказов [4523: 4603] -NSManagedObjectContext (MagicalSaves) MR_saveWithErrorCallback: НЕТ ИЗМЕНЕНИЙ В КОНТЕКСТЕ: Контекст - НЕ СОХРАНИТЬ

2012-10-16 17: 05: 20.120 Система заказов [4523: c07] -NSManagedObjectContext (MagicalSaves) MR_saveWithErrorCallback: -> Сохранение:* ДЕФОЛТ контекст ОСНОВНАЯ РЕЗЬБА *

2012-10-16 17: 05: 20.121 Система заказов [4523: c07] -NSManagedObjectContext (MagicalRecord) contextWillSave: Context:* ДЕФОЛТ контекст ОСНОВНАЯ РЕЗЬБА * собирается сохранить. Получение постоянных идентификаторов для новых 1 вставленных объектов

2012-10-16 17: 05: 20.142 Система заказов [4523: 1303] -NSManagedObjectContext (MagicalSaves) MR_saveWithErrorCallback: -> Сохранение:* ФОН СОХРАНИТЬ * контекст

2012-10-16 17: 05: 20.142 Система заказов [4523: 1303] -NSManagedObjectContext (MagicalRecord) contextWillSave: Context:* ФОН СОХРАНИТЬ * Контекст собирается сохранить. Получение постоянных идентификаторов для новых 1 вставленных объектов

Когда я проверяю свою сохраненную сущность данных с помощью findAll, она, похоже, сохраняется в базе данных. И если я полностью закрою приложение и перезапущу приложение, сущность все еще там (что говорит о том, что сущность хранилась постоянно, а не только в памяти). Кажется, все работает, но есть идеи, что это за сообщения об ошибках? и есть ли способ их отключить? или решить их? потому что это's блокирует мой другой NSLog ...

Спасибо

 Andres Kievsky08 мар. 2013 г., 00:45
Если вы используете Cocoapods, это то, что вам нужно:stackoverflow.com/questions/15284067/...

Ответы на вопрос(4)

добавьте макрос препроцессора MR_ENABLE_ACTIVE_RECORD_LOGGING = 0 в волшебный проект записи следующим образом:

 boro22 мар. 2015 г., 16:05
К сожалению, когда я бегуpod update макрос удален
 kokemomuke31 июл. 2015 г., 13:01
Ты спас мой день!
 samwize17 июл. 2015 г., 12:44
post_install крюк поможет:stackoverflow.com/a/15284069/242682
Решение Вопроса

нашел это. добавлять#define MR_ENABLE_ACTIVE_RECORD_LOGGING 0 в вашем файле Prefix.pch перед#import "CoreData+MagicalRecord.h"

 chadbag06 мая 2014 г., 18:12
@ Тони Арнольд. Спасибо, получил его!
 chadbag05 мая 2014 г., 21:00
@ Тони Арнольд. Git говорит, что мой текущий код MR обновлен по состоянию на 5 мая сПроисхождение / разработка», MR_ENABLE_ACTIVE_RECORD_LOGGING больше не имеет никакого эффекта, но[MagicalRecord setLogLevel:] не найден. Я нашелsetLoggingMask: в MagicalRecord + Options.m. Что я могу сделать, чтобы отключить нормальный вывод журнала сохранения MR или включить его при необходимости?
 Tony Arnold06 мая 2014 г., 02:31
@chadbag извините, мне пришлось изменить метод - вот документы:github.com/magicalpanda/MagicalRecord/wiki/Logging
 Tony Arnold10 апр. 2014 г., 11:43
Мы'мы изменили способ ведения журналов в следующем выпуске MagicalRecord 2.3 - вы'я смогу позвонить[MagicalRecord setLogLevel:MagicalRecordLogLevelOff]; (или ряд других уровней), чтобы отключить эти сообщения журнала, как только онс выпущен. Для выпусков до 2.3, то, что @ hook38 предложил, является правильным способом отключить ведение журнала.

быстрый

MagicalRecord.setLoggingLevel(MagicalRecordLoggingLevel.Off)

ObjC

[MagicalRecord setLoggingLevel:MagicalRecordLogLevelOff];

положить его в свой AppDelegate, когда приложениеdidFinishLaunchingWithOptions

 Paul Berg13 авг. 2016 г., 18:41
Теперь кажетсяs [MagicalRecord setLoggingLevel: MagicalRecordLoggingLevelOff];

Похоже, у вас все еще есть ошибки, которые нужно исправить. Я предлагаю не игнорировать это во время разработки ...

 christophercotton08 авг. 2013 г., 03:02
как только я перестал ходить к стоматологу, полостей больше не было.
 hook3816 окт. 2012 г., 09:29
как только я отключил запись журнала, больше не было сообщений об ошибках.

Ваш ответ на вопрос