如何在应用程序 iOS 中查看 XCode 的控制台日志?

How to view console log of XCode inside app iOS?

我们可以在XCode中看到调试日志。
是否可以在 iOS 应用程序中查看控制台日志?
我看到一些应用程序有这个功能。怎么做到的?

我最近在我的一个应用程序中取得了类似的成就。我所做的是覆盖 print 方法,并将其添加到我的应用程序中的 UITextView

看起来像这样:

func print(_ items: Any...) {
    //Add `items` to a text view here
    Swift.print(items)
}

Flex 怎么样? https://github.com/Flipboard/FLEX
FLEX(Flipboard Explorer)是一套用于 iOS 开发的 in-app 调试和探索工具。显示时,FLEX 会显示一个位于应用程序上方 window 中的工具栏。从这个工具栏,您可以查看和修改 运行 应用程序中的几乎每个状态。

赋予自己调试能力

  1. 检查和修改层次结构中的视图。
  2. 查看任何 object 上的属性和 ivars。
  3. 动态修改许多属性和 ivars。
  4. 动态调用实例和 class 方法。
  5. 观察详细的网络请求历史记录,包括计时、headers 和完整响应。
  6. 添加您自己的模拟器键盘快捷键。
  7. 查看系统日志消息(例如来自 NSLog)。
  8. 通过堆扫描访问任何实时 object。
  9. 查看应用沙箱中的文件系统。
  10. 浏览文件系统中的 SQLite/Realm 个数据库。
  11. 使用 control、shift 和 command 键在模拟器中触发 3D 触摸。
  12. 探索您的应用程序和链接系统框架(public 和私有)中的所有 classes。
  13. 快速访问有用的 object,例如 [UIApplication sharedApplication]、应用委托、键 window 上的根视图控制器等。
  14. 动态查看和修改 NSUserDefaults 值。
    与许多其他调试工具不同,FLEX 完全在您的应用程序内部运行,因此您无需连接到 LLDB/Xcode 或其他远程调试服务器。它在模拟器和物理设备上运行良好。