2013-04-15 61 views
1

我正在寻找一种日志框架,可以在我的设备上将应用程序作为ad Hoc分布运行时在我的mac上显示日志。Ad Hoc测试的NSLogger

我遇到过NSLogger。

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

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

我该如何整合NSLogger,使我可以从设备登录到我的MAC?

是否有任何其他框架提供给我这种记录?

谢谢。

+0

TestFlight提供了非常相似的内容。 – Thilo

+0

@Thilo OK让我查 – CRDave

+0

NSLogger桌面浏览器不会自动启动(我不知道是什么让你认为)。确保您的设备在设备启动时打开查看器。默认情况下,NSLogger客户端使用Bonjour来查找桌面查看器。确保Mac上的防火墙配置允许Bonjour通过。 没有理由你不能从一个设备得到这个工作。 – fpillet

回答

1

下面是我使NSLogger工作的步骤。对于桌面浏览器:

  • 下载desktop viewer binary
  • 后续的桌面浏览器的Xcode说明:part onepart two
  • 运行桌面浏览器中
  • 转到NSLogger->Preferences->Network
  • 检查Publish Bonjour service for automatic discovery on local network
  • NSLoggerBonjour service name文本框
  • 转到NSLogger->Window->Show Logger Status,你应该看到显示此状态窗口:

    • 卓悦(准备接受连接)
    • 卓悦SSL(准备接受连接)
    • TCP/IP端口50000(不可用)
  • 注意:此时你不会看到桌面浏览器输出窗口......该窗口只有当NSLogger客户端正确连接到桌面浏览器出现。

对于iOS的客户端:

  • 确保您的iOS设备在同一本地网络上的计算机上运行的桌面浏览器
  • 安装应用程序Discovery它允许你浏览Bonjour网络
  • 运行Discovery并浏览本地Bonjour网络,您应该会看到由NSLogger桌面查看器发布的两个条目:
    • _nsloggger._tcp.
    • _nslogger-ssl._tcp.
  • 当您完成整合项目看起来像this(我的项目被命名为iosTapDetectorDemo)
  • 通过以下 instructions
  • 与iOS应用程序整合NSLogger客户端
  • 添加需要的地方#import <NSLogger/NSLogger.h>语句(对我来说这是包括由发NSLogger方法调用方法文件包含的文件)
  • 替换所有NSLog方法调用与LoggerCompat方法调用
  • 下面的代码添加到您的主程序:

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