我无法将NSLogger成功集成到我的应用程序中

时间:2015-04-08 10:56:55

标签: ios logging

我无法让NSLogger在我的iOS项目中工作,甚至在新的空项目中工作。

我需要一些日志记录框架,经过一些比较后我选择了NSLogger因为它的桌面查看器正是我需要的。

我在项目中使用CocoaPod,因此安装非常简单。只需在Podfile中添加一行,然后在控制台中运行“pod update”即可。

我按照NSLogger wiki中的说明配置: 首先,将LoggerStartForBuildUser()添加到main()函数中; 其次,在我的代码中将NSLog()替换为LogMessageCompact()

然后我构建我的项目并在我的iPhone 6 plus(使用8.2系统)上运行它。 我的应用程序工作正常,但我没有登录控制台,而不是一个字!

我设置了几个断点并确保正确的日志记录代码确实执行了。 但仍然没有发生任何事情,好像NSLogger永远不会存在。

我创建了一个全新的空app应用程序并完成了相同的安装过程,但仍然没有显示日志。

我真的想知道我是否遗漏了什么。有人像我一样遇到类似的问题吗?

PS:我的开发环境是Yosemite + Xcode 6.2

1 个答案:

答案 0 :(得分:1)

问题解决了。

事实证明,NSLogger无法连接到桌面查看器。我不得不使用LoggerSetViewerHost(NULL,主机名,端口)而不是LoggerStartForBuildUser()。它就像一个魅力。

但每次重新启动桌面查看器时,端口都会发生变化。所以我不得不在我的代码中更改端口并重新编译。这有点烦人。

默认情况下,NSLogger会将所有NSLog()重定向到其日志缓冲区。因此,除非您使用LoggerSetOptions(kLoggerOption_LogToConsole)强制NSLogger将所有日志复制到控制台中,否则在控制台中看不到任何内容是正常的。