2

我正在寻找一个日志框架,当我在我的设备上运行应用程序作为临时分发时,它可以在我的 mac 上显示日志。

我遇到过 NSLogger。

它在模拟器中运行良好,但如果我在设备上运行(来自 xcode 或来自网络)它不起作用。

不工作意味着当我在模拟器上运行时,mac Desktop Viewer 应用程序没有启动。

如何集成 NSLogger 以便我可以从设备获取日志到我的 MAC?

是否有任何其他框架可以为我提供这种日志记录?

谢谢。

4

1 回答 1

2

这是我为使 NSLogger 工作而采取的步骤。对于桌面查看器:

  • 下载桌面查看器二进制文件
  • 遵循桌面查看器 xcode 说明:第一部分第二部分
  • 运行桌面查看器
  • NSLogger->Preferences->Network
  • 查看Publish Bonjour service for automatic discovery on local network
  • NSLoggerBonjour service name文本框中输入
  • 转到NSLogger->Window->Show Logger Status,您应该会看到一个显示以下内容的状态窗口:

    • Bonjour(准备好接受连接)
    • Bonjour SSL(准备好接受连接)
    • TCP/IP 端口 50000(不可用)
  • 注意:此时您将看不到桌面查看器输出窗口...该窗口仅在 NSLogger 客户端正确连接到桌面查看器时出现。

对于 iOS 客户端:

  • 确保您的 iOS 设备与运行桌面查看器的计算机位于同一本地网络上
  • 安装Discovery允许您浏览 Bonjour 网络的应用程序
  • 运行Discovery并浏览本地 Bonjour 网络,您应该会看到 NSLogger 桌面查看器发布的两个条目:
    • _nsloggger._tcp.
    • _nslogger-ssl._tcp.
  • 按照这些说明将 NSLogger 客户端与您的 iOS 应用程序集成
  • 完成集成后,您的项目将如下所示(我的项目名为 iosTapDetectorDemo)
  • 在需要的地方添加#import <NSLogger/NSLogger.h>语句(对我来说,这是在进行 NSLogger 方法调用的方法文件包含的包含文件中)
  • 用方法调用替换所有NSLog方法LoggerCompat调用
  • 将以下代码添加到您的主程序中:

    LoggerSetOptions(LoggerGetDefaultLogger(), kLoggerOption_BrowseBonjour|kLoggerOption_BufferLogsUntilConnection);
    LoggerSetupBonjour(LoggerGetDefaultLogger(), CFSTR("_nslogger._tcp"), CFSTR("NSLogger"));
    LoggerStart(LoggerGetDefaultLogger());
    
  • 运行您的 iOS 应用程序,记录器输出窗口应出现在桌面查看器上,您的LoggerCompat方法调用应在查看器中显示文本

于 2015-10-07T17:43:25.773 回答