我正在使用一个非常新的API创建一个演示应用程序,所以事情可能仍然不稳定。我应该在Objective中实现哪些方法来尽可能地使应用程序和代码成为崩溃证明?
请注意,我并不是要求提高稳定性的做法,而是更像是捕获运行时异常的方法等,并将其转换为noop,这样即使有些事情发生了变化,演示也不会中断(包括任何密切的来源) API lib我使用行为不端)。
答案 0 :(得分:1)
您可以阅读这篇文章:"处理未处理的异常和信号" http://www.cocoawithlove.com/2010/05/handling-unhandled-exceptions-and.html 它显示了在未捕获的异常后恢复的解决方案。但是不要忘记阅读限制部分。这是一件冒险的事情。
答案 1 :(得分:0)
我用不稳定的东西做了类似的东西。在运行时调整了一些有风险的API方法(SDK是封闭源代码),并将原始调用包装到@try
块中。我甚至可以发送关于异常的GA事件来追踪崩溃的东西。
可以使用https://github.com/eppz/eppz.swizzler(请参阅测试用法)。使用https://github.com/nst/RuntimeBrowser,您可以精美地检查封闭的源库。
或者您可以使用NSSetUncaughtExceptionHandler
定义全局异常处理程序。