当我们使用Xcode进行日常开发时,偶尔出现一些错误,Xcode反馈崩溃位置与错误信息并不与实际出现的问题的代码匹配.
这时我们可以通过以下操作,添加两个断点,保证程序在实际崩溃之前的那行代码停止,更直观的让我们发现问题的所在.
步骤如下:
- 打开断点左标签,点击左下角的“+”按钮。
-
选择 Exception Breakpoint.
-
系统会生成一个断点.保证断点信息如图所示.
-
再点击左下角的"+"按钮,选择 Symbolic Breakpoint.
-
在Symbol行输入malloc_error_break.保证断点信息如图所示.
-
设置结束,结果如图示.
设置完成,实现了我们需要的功能.可以更准确的进行debug了.
When those 2 breakpoints are enabled, xcode will automatically break on the faulting line instead of directly crashing without giving more informations.
To activate them, follow these steps :
- open the breakpoint left tab, and click the "+" button in the bottom left corner.
- select Add Exception Breakpoint.
- Right click on the new breakpoint, and configure it this way :
- Exception : All
- Break : On throw
- Action : Add Action
- Options : leave the box unchecked.
- Then add a symbolic break point ("+" button -> Add Symbolic Breakpoint)
- Configure the breakpoint this way :
- Symbol : malloc_error_break
- don't modify all the other options
You're done for starting debugging !
参考链接: Stackoverflow