找出NSLogs的来源?

时间:2012-06-01 21:11:49

标签: ios console nslog

在我的应用程序中,我将收到以下3个NSLog:

AudioStreamBasicDescription:  2 ch,  44100 Hz, 'lpcm' (0x00000C2C) 8.24-bit little-endian signed integer, deinterleaved
2012-06-01 17:05:43.397 App[1579:707] authenticateWithCompletionHandler: enter
2012-06-01 17:05:43.399 App[1579:707] authenticateWithCompletionHandler: exit

但是,我知道这些NSLog来自哪里。有没有办法在没有通过我项目中的每一个课程的情况下找到答案?

这些日志真的让我烦恼,让实际看到真正的控制台输出变得更加困难。

任何建议都将不胜感激!

谢谢!

4 个答案:

答案 0 :(得分:3)

command + shift + f进行项目范围的NSLog搜索 写NSLog并按Enter键

如果找不到nslog,那么它们是从SDK中生成的

答案 1 :(得分:2)

是的,在Xcode中转到左边的小搜索栏(查看图片),然后搜索正确的关键字。

enter image description here

注意:我猜你在你的项目中导入了一些游戏中心的东西,这就是他们可能来自的地方

答案 2 :(得分:2)

您可以尝试搜索“NSLog(@”authenticateWithCompletionHandler“如果没有结果,那么正如Omar所说,它可能来自操作系统。

答案 3 :(得分:0)

你应该把你的NSLog写得更加冗长。根据需要提供尽可能多的信息。您可能会考虑做的一件事是用宏(I.E:MYLog)替换所有NSLog语句,如下所示:

#define MYLog(msg) NSLog(__FILE__ "(" __LINE__ "): " msg);

然后,只需使用MYLog,就像它是NSLog一样。

注意:您可能需要稍微更改一下,因为Obj-C使用NSStrings的'@'前缀字符串,而NSLog采用NSString。我对预处理器不太熟悉,所以我不知道怎么做,但我假设你会使用'##'预处理器运算符。

相关问题