отключить подробное ведение журнала Cocos2D

Я только что обновился до cocos 2.1 и вижу нелепое количество логов в консоли, например:

2013-09-18 23:15:38.120 Notes and Clefs[842:907] cocos2d: deallocing <CCSprite = 0x1182aa0 | Rect = (816.00,640.00,32.00,64.00) | tag = -1 | atlasIndex = -1>
2013-09-18 23:15:38.121 Notes and Clefs[842:907] cocos2d: deallocing <CCSprite =  0x1182600 | Rect = (816.00,128.00,32.00,64.00) | tag = -1 | atlasIndex = -1>
2013-09-18 23:15:38.122 Notes and Clefs[842:907] cocos2d: deallocing <CCArray = 0x1161e00> = ( <CCSprite = 0x1182790 | Rect = (816.00,640.00,32.00,64.00) | tag = -1 | atlasIndex = -1>, )
etc..

Глядя на код, я вижу:

#if !defined(COCOS2D_DEBUG) || COCOS2D_DEBUG == 0
#define CCLOG(...) do {} while (0)
#define CCLOGWARN(...) do {} while (0)
#define CCLOGINFO(...) do {} while (0)

#elif COCOS2D_DEBUG == 1
#define CCLOG(...) __CCLOG(__VA_ARGS__)
#define CCLOGWARN(...) __CCLOGWITHFUNCTION(__VA_ARGS__)
#define CCLOGINFO(...) do {} while (0)

#elif COCOS2D_DEBUG > 1
#define CCLOG(...) __CCLOG(__VA_ARGS__)
#define CCLOGWARN(...) __CCLOGWITHFUNCTION(__VA_ARGS__)
#define CCLOGINFO(...) __CCLOG(__VA_ARGS__)
#endif // COCOS2D_DEBUG

И я установил COCOS2D_DEBUG = 0, но все равно получаю такой же подробный журнал...

У меня есть Cocos2D в моем проекте в виде файла статической библиотеки .a. Возможно ли, что этот .a уже имеет макрос/константу, определенную на уровне 2 или что-то в этом роде, и поэтому я вижу, что это не имеет никакого значения?

Может ли кто-нибудь порекомендовать способ отключить это?


person patrick    schedule 19.09.2013    source источник


Ответы (1)


Да, когда статическая библиотека скомпилирована с использованием схемы отладки, она распечатает все эти отладочные сообщения. Попробуйте перекомпилировать статическую библиотеку, установив для макроса препроцессора COCOS2D_DEBUG значение 1.

Почему вы добавляете его как статическую библиотеку .a? Я просто добавляю cocos2d-ios.xcodeproj в свой собственный проект и добавляю libcocos2d.a в этапы сборки в разделе Link Binary with Libraries. Таким образом, он будет автоматически перекомпилировать cocos2d при каждом изменении.

person Bojacob    schedule 19.09.2013
comment
Статическая библиотека — это файл .a, не так ли? Но... да, я делаю это именно так, как вы описали. У меня есть cocos2d-ios.xcodeproj в моем проекте, и файл .a добавлен в бинарную ссылку с опцией библиотек. У меня есть макрос COCOS2D_DEBUG, установленный на 0, и я очистил, проверил, что продукт .a удален, но при сборке я все равно получаю все подробные выходные данные журнала. - person patrick; 19.09.2013
comment
Макрос препроцессора находится в проекте cocos2d-ios под целью cocos2d, а не в вашем проекте. - person Bojacob; 19.09.2013
comment
ааааа.. теперь это имеет смысл! - person patrick; 19.09.2013