我有这么多NSLog(@" ..");在xcode中打印值。因此,当我发布应用程序时,我想在我的Xcode中禁用所有NSLog而不是// NSLog。
我有两个问题。
当我使用Nslog时,它会显示如下结果..
2014-08-07 12:29:29.609 myapp_name[4694:70b] PHONENUMBER:1234567890
2014-08-07 12:29:29.611 myapp_name[4694:70b] USERNAME: myname
但我不喜欢这种类型的输出。我只想显示输出:
PHONENUMBER:1234567890
USERNAME: myname
2.当我发布应用程序时,完全禁用NSLog。
答案 0 :(得分:9)
对于您的问题1请按照以下答案:
#ifdef DEBUG
#define NSLog(FORMAT, ...) fprintf(stderr,"%s\n", [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);
#else
#define NSLog(...) {}
#endif
这只是为了显示像printf这样的输出不像NSLog ----
对于你的问题2请按照这个答案:
#ifndef NDEBUG
#define NSLog(...);
#endif
它在xcode 5和iOS 7上也运行良好。 :)
答案 1 :(得分:1)
打开您的.pch
文件
添加以下行
启用//隐藏所有NSLog
#ifndef _DEBUG
#define NSLog(format, ...)
#endif
禁用//显示全部NSLog
/*
#ifndef _DEBUG
#define NSLog(format, ...)
#endif
*/