0

在我的应用程序中,我收到以下 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

4 回答 4

3

command + shift + f write NSLog 并按 Enter键在项目范围内搜索 NSLog

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

于 2012-06-01T21:19:08.133 回答
2

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

在此处输入图像描述

注意:我猜你在项目中导入了一些 Game Center 的东西,它们可能来自那里

于 2012-06-01T21:18:00.710 回答
2

您可以尝试搜索 "NSLog(@"authenticateWithCompletionHandler" 如果没有产生任何结果,那么正如 Omar 所提到的,它可能来自操作系统。

于 2012-06-01T21:18:31.800 回答
0

你真的应该把你的 NSLog 写得更详细。提供尽可能多的信息。您可能会考虑做的一件事是将所有 NSLog 语句替换为宏(IE:MYLog),如下所示:

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

然后,就像使用 NSLog 一样使用 MYLog。

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

于 2012-06-01T21:26:03.463 回答