在ios项目中,我们经常会遇到打印的日志显示不全的问题,对于开发者来说,十分不便。我们可以通过以下方式去解决。
1.在.pch文件中自定义一个宏KSLog(名称自定义),以便在整个工程中都能使用到。代码如下:
#ifdef DEBUG
#define KSLog(format, ...) printf("class: <%p %s:(%d) > method: %s \n%s\n", self, [[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, __PRETTY_FUNCTION__, [[NSString stringWithFormat:(format), ##__VA_ARGS__] UTF8String] )
#else
#define KSLog(format, ...)
#endif
这里我用"ifdef...else..."语句声明只在debug模式下使用KSLog有效,当然你也可以在release模式下使之生效,只需要把DEBUG下的代码复制到else下就可以了。
2.打印的时候直接使用KSLog替代原有的NSLog即可,这样打印的log日志就能显示完整了。
网友评论