替代iPhone上的NSSetUncaughtExceptionHandler

Ed *_*rty 8 iphone cocoa-touch objective-c

我正在尝试为iPhone应用程序创建一个通用错误处理程序,只要在应用程序中抛出任何常规错误而不在应用程序中的每个方法周围放置try/catch块,就会将用户带到恢复屏幕.

使用NSSetUncaughtExceptionHandler不起作用,因为应用程序在运行处理程序后终止.

有没有办法改变这种行为,或者使用任何其他一般会捕获异常的处理程序而不会导致应用程序在之后退出?

并且,请不要回答这是一个好主意还是坏主意.

Cli*_*ris 11

最初的海报可能已经解决了他的问题.但是,对于未来遇到这种情况的人来说......

Matt Gallagher撰写了一篇关于捕获未处理异常的优秀文章,并在发布此问题几个月后发出信号.我发现它比Scott上面提到的答案更有用.

特别是,Matt的帖子描述了如何尝试恢复(如果适用)允许您的应用程序继续运行,甚至可以显示带有错误信息的UIAlertView(提示:它涉及创建新的运行循环).