xcode - 在 XCode 4 中调试异常

标签 xcode debugging exception

我正在努力了解由于 AVAudioRecorder 实例上的方法调用而引发的异常。我设置了一个异常断点,但我无法从堆栈跟踪中收集任何有用的信息。抛出异常的点是在调用期间:
[recorder prepareToRecord];
如果我关闭断点,应用程序运行良好,似乎没有任何负面影响。录音机功能正常。需要说明的是,具体情况并不那么重要。更像是“在这种情况下我应该怎么做才能解决问题?”的情况。我看不到任何方法可以通过手头的工具了解更多有关问题的信息。 ACBaseCodec 上的文档似乎陈旧,并没有说明可能导致抛出异常的原因。

来自调试导航器的堆栈跟踪:

Debug Navigator

来自单个线程的堆栈跟踪:

enter image description here

有没有办法知道是什么导致了这个异常?

最佳答案

不幸的是,我认为 AVAudioPlayer 和 AVAudioRecorder 似乎使用 C++ 异常作为其在 prepareTo 中的正常处理流程的一部分...。因此,如果您对所有异常启用中断,则没有真正的方法可以避免在那里停止。您可能可以继续继续并通过它。另一种可能的解决方法是仅启用 Objective-C 异常,因为它似乎在抛出 C++ 异常。这就是我所做的。抱歉,这不是答案,为什么他们为 prepareTo 做出设计决定......超出了我的理解。

关于xcode - 在 XCode 4 中调试异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7026545/

相关文章:

c++ - 是否可以将异常传递给处理程序然后重新抛出原始异常?

javascript - 在 Rhino 中捕获未处理的异常

java - NotifyAll,IllegalMonitorStateException

ios - 获取用户选择的图像是否需要 CloudKit?

java - 如何在 Android 上以编程方式创建断点

ios - 应用程序安装失败。找不到代码签名

visual-studio-2010 - WP7应用无法启动进行调试

c++ - 如果我不使用 <iostream> 的功能,我可以避免包含它吗?

ios - 如何在点击 UITextField 时停止显示键盘?

iphone - NSURLConnection 的 Xcode 4 警告 "Expression result unused”