1、关于这个问题,网络上已有很多解释了。就是使用定义NSLog的宏定义,并使用printf来代替。
2、在这里就不多说了,此处只记录一个问题,就是使用可变参时的打印办法:
void ECNetLog(NSString *format, ...)
{
#ifdef DEBUG
if (![ECNetworkConfig sharedConfigInstance].debugEnabled) {
return;
}
NSLog(@"\n\n==========*- 网络日志-开始 -*==========\n");
va_list argptr;
va_start(argptr, format);
NSString *str = [[NSString alloc] initWithFormat:format arguments:argptr];
// vprintf([format UTF8String], argptr); // 会把%@等打印出来
// NSLogv(format, argptr); // xcode8开始的bug,打印字数受限1024
va_end(argptr);
printf("%s\n\n",str.UTF8String);
NSLog(@"\n==========*- 网络日志-结束 -*==========\n\n");
#endif
}
网友评论