断点调试正确用法iOS?

Breakpoint Debug proper usage iOS?

我设置了断点。我使用命令 ⌥⌘-单击断点。

它向我展示了以下选项。

如何使用这些选项。

1. AppleScript
2. Capture GPU Frame
3. Debugger Command
4. Log Message
5. Shell Command
6. Sound

还有其他选择

1. Condition
2. Ignore
3. Action
4. Options

这些选项是什么。他们工作得怎么样?

您可以阅读有关断点选项的详细教程:https://www.bignerdranch.com/blog/xcode-breakpoint-wizardry/

简短摘要:

  • 条件:如果条件评估为真,则触发断点。
  • 忽略是自我解释。喜欢 "ignore first 2 passes".
  • 动作:断点触发时的动作
  • 选项:设置是否不想在XCode
  • 中的这个断点处停止

对于操作字段,您可以选择触发断点时执行的操作。可能的值为:

  • AppleScript:执行输入的 AppleScript 代码
  • 捕获 GPU 帧:捕获 OpenGL 帧内容
  • 调试器命令:执行输入的 GDB 命令
  • 日志消息:将输入的消息记录到控制台
  • Shell命令:执行输入的shell命令
  • 声音:播放声音文件

一旦调试器遇到此断点,这些选项可用于执行其他操作。

例如,"Log Message" 非常有用,因为它可以让您打印自动收集的数据,例如此断点的命中计数、它所在的方法的名称、变量的值和其他表达式。

使用相同的原理,您可以让调试器 运行 Apple 脚本,执行 shell 命令等

您还可以检查 "Automatically continue after evaluating actions",这样调试器在点击它时实际上不会中断 - 但操作仍会执行。

您还可以使用更多高级选项,例如仅在满足特定条件时才执行操作、忽略断点除非它具有特定的最小命中率,甚至可以链接多个操作(+ 和 - 按钮)。