我在iOS 5模拟器/设备中调试Xcode 4.2时遇到问题.正如预期的那样,以下代码崩溃:
NSArray *arr=[NSArray array];
[arr objectAtIndex:100];
Run Code Online (Sandbox Code Playgroud)
在iOS 4中,我获得了十六进制数的有用堆栈跟踪.但是在iOS 5中,它只是给了我:
*** First throw call stack:
(0x16b4052 0x1845d0a 0x16a0674 0x294c 0x6f89d6 0x6f98a6 0x708743 0x7091f8 0x7fcaa9 0x2257fa9 0x16881c5 0x15ed022 0x15eb90a 0x15eadb4 0x15eaccb 0x6f02a7 0x6faa93 0x2889 0x2805)
Run Code Online (Sandbox Code Playgroud)
谢谢.
无论如何都要为iPhone应用程序实现一个全局异常处理程序,以便异常,而不是静默地崩溃应用程序,可以允许某种消息?
我可以理解,如果它不可行,因为程序可能处于不一致的状态,但至少告诉用户"抱歉 - 出错了!"真是太好了.
谢谢!
在我的应用程序的某些时候,我已经完成了这个exit(0)崩溃我的应用程序.但我还没弄清楚在执行时调用哪种方法.
我把消息放入:
(void)applicationWillTerminate:(UIApplication *)application
(void)applicationDidEnterBackground:(UIApplication *)application
Run Code Online (Sandbox Code Playgroud)
但这一切似乎都没有被召唤!什么方法在exit(0)完成时被调用?