当应用程序在使用 testflight 的设备上运行时,有啥方法可以查看日志?
Posted
技术标签:
【中文标题】当应用程序在使用 testflight 的设备上运行时,有啥方法可以查看日志?【英文标题】: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)或他们的控制台日志(调试输出)。
【参考方案1】:
当您将 iPhone 插入 Mac 时,您可以在设备的缓存日志中找到您的 NSLog()
s。
只需转到 xcode 中的管理器,选择设备选项卡,展开设备信息并选择设备日志。找到您的进程(应用程序)的名称,单击它,您将在其中找到您的NSLogs()
s。
【讨论】:
我已经在两天前使用了 xcode 管理器,但是因为在你 +1 给你之前我没有发布我自己的答案。【参考方案2】:您需要让用户提交他们的 ASL(Apple 系统日志,以前称为 syslog)或他们的控制台日志(调试输出)。或者,您可以构建一个内部日志系统,将输出存储到本地文件中,您可以让用户通过电子邮件或 http post 提交给您。
【讨论】:
【参考方案3】:迟到的回应,但为了将来的搜索:
您可以使用console.app
(cmd+空格并搜索控制台)应用程序并将其附加到您的应用程序当前正在运行的手机上 - 然后您可以查看设备中的所有日志;)希望对您有所帮助!
【讨论】:
以上是关于当应用程序在使用 testflight 的设备上运行时,有啥方法可以查看日志?的主要内容,如果未能解决你的问题,请参考以下文章