我无法让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
答案 0 :(得分:1)
问题解决了。
事实证明,NSLogger无法连接到桌面查看器。我不得不使用LoggerSetViewerHost(NULL,主机名,端口)而不是LoggerStartForBuildUser()。它就像一个魅力。
但每次重新启动桌面查看器时,端口都会发生变化。所以我不得不在我的代码中更改端口并重新编译。这有点烦人。
默认情况下,NSLogger会将所有NSLog()重定向到其日志缓冲区。因此,除非您使用LoggerSetOptions(kLoggerOption_LogToConsole)强制NSLogger将所有日志复制到控制台中,否则在控制台中看不到任何内容是正常的。