如何在Xcode自动设置所有方法的断点?我想了解我的程序如何运行,以及当我与用户界面交互时调用哪些方法。
如何在Xcode自动设置所有方法的断点?我想了解我的程序如何运行,以及当我与用户界面交互时调用哪些方法。
breakpoint set -r . -s <PRODUCT_NAME>
(插入您的应用程序名称)。lldb将会回答类似于以下内容...
Breakpoint 1: 4345 locations
现在只需按下“继续”按钮。
breakpoint set
是lldb用于创建断点的命令。位置是使用正则表达式(-r
)指定的函数/方法名称,例如.
可以匹配任何方法。-s
选项用于将范围限制为您的可执行文件(需要排除框架)。
当您运行应用程序时,lldb现在会在主可执行文件的函数被调用时中断。
要禁用断点,请键入breakpoint delete 1
(插入正确的断点号)。
有许多可能性,但没有办法仅为您的函数设置断点。您可以尝试:
breakpoint set -r '\[ClassName .*\]$'
将断点添加到类中的所有方法
breakpoint set -f file.m -p ' *- *\('
将断点添加到文件中的所有方法
您还可以将它与多个文件一起使用:
breakpoint set -f file1.m -f file2.m -p ' *- *\('
快捷方式:
br se -f file1.m -f file2.m -p ' *- *\('
您可以为所有类中具有某个前缀(也可以只是您自己的类)的所有方法添加断点
br se -r . -s Prefix
这行代码(wzbozon回答):
breakpoint set -n viewDidLoad
将在所有类中的所有方法viewDidLoad
上设置断点。
我尝试过,但无法仅在我们自己的方法上设置断点。
有些情况下,仅在某些方法上设置断点会更方便。
使用LLDB,我们可以按名称在所有ViewDidLoad方法上设置断点,例如。
(lldb) breakpoint set -n ViewDidLoad
这里的"-n"表示按名称。
同时,我们可以按选择器名称设置断点:
(lldb) breakpoint set -S alignLeftEdges:
这里的"-S"表示选择器。
breakpoint set -r . -s MyFooApp
。 - Nikolai Ruhe