如何使用os_log在Console应用程序中查看iOS设备日志

6
我希望测试应用程序时不通过Xcode启动,而是直接从SpringBoard启动。同时,我想在此过程中查看日志消息。 使用os_log,我没有任何问题查看模拟器的控制台日志。这很不错,因为我的类别和子系统让我可以过滤以查看我想在“Console”应用程序中看到的确切消息:

enter image description here

现在我想在我的设备上执行此操作。我可以在控制台应用程序中看到我的连接设备列表:

enter image description here

但是我在控制台应用程序中看不到我的应用程序的任何os_logprint消息。这只是不支持的吗?有没有一种方法可以从我的设备记录到控制台应用程序?有没有任何方法可以独立于设备运行的应用程序进行日志记录? 编辑 更加好奇了。现在我能够在应用程序在设备上独立运行时看到一些os_log消息:

enter image description here

然而,问题在于“某些”。它似乎会开始工作一段时间,然后又神秘地停止。就像从设备到控制台的管道不可靠一样。
现在问题变成了:是否有任何方法可以从独立运行在设备上的我的应用程序中可靠地记录日志?
2个回答

7

这并不是完整的答案,但其中一大部分技巧似乎是这样的:

在Xcode的“设备和模拟器”窗口中,找到设备,通过点击左下角的小按钮“显示控制台”来显示控制台。

这似乎打开了闸门,并允许日志事件流通过到控制台应用程序。它仍然不是100%可靠的;最终,流可能会被神秘地关闭,我有印象事件会偶尔随机省略。但它似乎是获取流动的必要条件。


我正在使用 Xcode 14.0.1,但没有看到这个功能,它被移除了吗? - CyberMew
@CyberMew 那是五年前的事了;Xcode界面自那时以来已经发生了很大变化。也许现在这个按钮已经被顶部的“打开控制台”按钮所取代了。 - matt

2

请确保您已启用了来自 控制台应用 > 操作 菜单的包括信息消息包括调试消息

输入图像描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接