【问题标题】:Is there any way to see logs when application is running on device using testflight?当应用程序在使用 testflight 的设备上运行时,有什么方法可以查看日志?
【发布时间】:2013-05-25 06:10:23
【问题描述】:

我想查看应用程序在测试人员设备上运行时的日志。
因此,设备未连接到 MAC。

我使用以下代码来控制 DLog() 语句仅在应用程序处于调试模式时记录。

#ifdef DEBUG
#    define DLog(...) NSLog(__VA_ARGS__)
#else
#    define DLog(...) /* */
#endif
#define ALog(...) NSLog(__VA_ARGS__)


现在,我想测试在 testflight 中运行时 DLog() 是否记录(DEBUG 已禁用)。那么如何查看日志呢?

注意:1)我尝试在预处理器宏中设置 DEBUG。那没有用,所以现在我想尝试使用 testflight。
2) 使用 testflight SDK 将不起作用,因为查看日志他们使用#define NSLog TFLog,而我使用 ALog() 和 DLog()。

【问题讨论】:

  • 您希望看到这些日志是实时生成的(因为用户正在使用它们?)还是希望这些日志通过 TestFlight 上传?
  • @MichaelDautermann 我不介意以任何方式或任何时间看到他们。我只是想看看是否打印了 DLog()。
  • 为什么不将“ALog”和/或“Dlog”映射到“TFLog”?
  • @MichaelDautermann 因为它们已经映射到 NSLog。
  • 您需要让用户提交他们的 ASL(Apple 系统日志,以前称为 syslog)或他们的控制台日志(调试输出)。

标签: objective-c logging ios6 testflight


【解决方案1】:

当您将 iPhone 插入 Mac 时,您可以在设备的缓存日志中找到您的 NSLog()s。

只需转到 xcode 中的管理器,选择设备选项卡,展开设备信息并选择设备日志。找到您的进程(应用程序)的名称,单击它,您将在其中找到您的NSLogs()s。

【讨论】:

  • 我已经在两天前使用了 xcode 管理器,但是因为在你 +1 给你之前我没有发布我自己的答案。
【解决方案2】:

您需要让用户提交他们的 ASL(Apple 系统日志,以前称为 syslog)或他们的控制台日志(调试输出)。或者,您可以构建一个内部日志系统,将输出存储到本地文件中,您可以让用户通过电子邮件或 http post 提交给您。

【讨论】:

    【解决方案3】:

    迟到的回应,但为了将来的搜索:

    您可以使用console.app(cmd+空格并搜索控制台)应用程序并将其附加到您的应用程序当前正在运行的手机上 - 然后您可以查看设备中的所有日志;)希望对您有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-25
      • 2020-10-20
      • 1970-01-01
      • 1970-01-01
      • 2015-03-26
      • 2015-09-09
      • 2016-05-21
      • 2019-02-01
      相关资源
      最近更新 更多