|
|
1
587
以下是我经常使用的关于NSLog的一些有用宏:
ALog将始终输出文本(与常规NSLog一样)。 输出(例如ALog(@“Hello world”))如下:
|
|
|
2
141
总结一下:
#ifdef DEBUG
# define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#else
# define DLog(...)
#endif
#define ALog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#ifdef DEBUG
# define ULog(fmt, ...) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"%s\n [Line %d] ", __PRETTY_FUNCTION__, __LINE__] message:[NSString stringWithFormat:fmt, ##__VA_ARGS__] delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]; [alert show]; }
#else
# define ULog(...)
#endif
|
|
|
3
74
没有显示日志输出,但我不知道这是否有任何副作用。 |
|
|
4
20
|
|
|
5
19
随着
但是随着
|
|
|
6
16
this question
|
|
|
7
13
禁用所有NSLogs,对于对MACROS过敏的人,您也可以编译以下内容:
而且,几乎像NSLog一样使用它:
从这个博客: https://whackylabs.com/logging/ios/2011/01/19/ios-moving-in-and-out-of-nslogs/ |
|
|
9
11
更改现有的NSLogs以显示调用它们的行号和类很容易。在前缀文件中添加一行代码:
|
|
|
10
6
例如,这很简单
输出: -[AppDelegate应用程序将进入前台:] |
|
|
11
5
在上述答案的基础上,以下是我抄袭并得出的结论。还添加了内存日志记录。
|
|
|
12
4
DLog的新增功能。不要从已发布的应用程序中完全删除调试,只需禁用它。当用户遇到需要调试的问题时,只需告诉如何
Jomnius iLessons iLearned的更长答案: How to Do Dynamic Debug Logging in Released Application |
|
|
13
3
一段时间以来,我一直在使用一个采用了上述几个宏的网站。我的重点是在控制台中登录,重点是 ;如果你不介意很多日志行,但想轻松地切换它们的批次;关闭后,您可能会发现这很有用。
接下来,我打开或关闭登录。
分类 超过该值将不会调用日志记录调用。然后定义各种 风味 NSLog输出
因此,根据kLOGIFcategory和kLOGIFdetailLTEQ的当前设置,调用类似
我相信很多人会觉得这有点矫枉过正,但以防万一有人发现这符合他们的目的。。 |
|
|
Human · NSLog和NSLogv之间的差异 9 年前 |