Transwiki:發布App時自動屏蔽NSLog日誌列印
跳至導覽
跳至搜尋
NSLog函數在Debug或Release的模式下都是有效的(為什麼蘋果這樣設計呢?一般在Release被屏蔽才對。),導致發布的App會帶來效率低下、消耗系統資源等問題。
為了解決這個問題,做了如下的設置:
/*創建DLog.h頭文件*/
#ifndef DEBUG #define NSLog(...) /* */ #endif
這裡需要說明下,DEBUG這個宏是在項目的「Build Settings」的"Preprocessor Macros"中定義。所以以上的代碼在Release模式下把NSLog給完全屏蔽了。
最後在項目的"...-Prefix.pch"文件中加入聲明進行預處理,如下:
#ifdef __OBJC__ #import <UIKit/UIKit.h> #import <Foundation/Foundation.h> #import "DLog.h" #endif
完成上面的工作,那麼我們就可以放心使用NSLog了,不會在Release後再來騷擾我們啦,哈哈。