如何防止iPhone应用程序突然关闭或崩溃?

如何防止iPhone应用程序突然关闭或崩溃?,iphone,objective-c,Iphone,Objective C,我的iPhone应用程序在执行过程中的某个时间点崩溃。我不希望应用程序突然终止,我希望显示一条警报消息,如“对不起,应用程序遇到错误”,当在警报视图中按“确定”时,应用程序应关闭 在我的appdelegate文件中是否有任何可以使用的异常或错误处理程序 请告诉我 谢谢你的支持。我不确定,但我想你可以试试看。但使用它是在你的手中 try/catch块用于捕获异常并阻止它在调用堆栈中向上传播 其思想是,您在知道如何处理它的地方捕获它,然后您就有机会执行代码以响应异常 这不是一个可以阻止任何事情的神奇

我的iPhone应用程序在执行过程中的某个时间点崩溃。我不希望应用程序突然终止,我希望显示一条警报消息,如“对不起,应用程序遇到错误”,当在警报视图中按“确定”时,应用程序应关闭

在我的appdelegate文件中是否有任何可以使用的异常或错误处理程序

请告诉我


谢谢你的支持。

我不确定,但我想你可以试试看。但使用它是在你的手中

try/catch块用于捕获异常并阻止它在调用堆栈中向上传播

其思想是,您在知道如何处理它的地方捕获它,然后您就有机会执行代码以响应异常

这不是一个可以阻止任何事情的神奇解决方案,它只是我上面所说的。除了例外情况,你做什么才是最重要的

此外,是的,在某种程度上,您可以通过添加try/catch块来防止程序崩溃,但您唯一成功的方法是对用户隐藏崩溃,然后让程序继续运行。忽略碰撞并不总是安全的,或者更确切地说,忽略碰撞通常是不安全的

如果您正在寻找一些关于如何避免程序崩溃的全面建议,以下是我的建议:

编写一个正常工作的程序 参考文献

Hii人

我也经历过同样的情况,当应用程序在运行时崩溃时,我必须将崩溃数据发布到开发服务器上——这对我们跟踪开发人员关注的应用程序性能很有用——选择什么

如果我们使用TRy/catch,那么不可能用TRy/catch块在所有视图代码中编写代码

因此,有一个库,您只能在appDelegate类中声明,它将在应用程序的任何部分发生任何崩溃/错误时向您发出警报

我们为新来的人写自己的图书馆,试试这个-


您可以通过以下方式处理应用程序中的崩溃

NSArray* testArray = [[NSArray alloc] init];

@try 
{
  // Attempt access to an empty array
  NSLog(@"Object: %@", [testArray objectAtIndex:0]);

}
@catch (NSException *exception) 
{
  // Print exception information
  NSLog( @"NSException caught" );
  NSLog( @"Name: %@", exception.name);
  NSLog( @"Reason: %@", exception.reason );
  return;
}
@finally 
{
  // Cleanup, in both success and fail cases
  NSLog( @"In finally block");
  // Show alert to user

  UIAlertView *crashAlert = [[UIAlertView alloc] initWithTitle:@"FAILED" 
                                                    message:@"Sorry. error occured" 
                                                    delegate:self 
                                                    cancelButtonTitle:@"OK" 
                                                    otherButtonTitles:nil];
    [crashAlert show];

}

,我希望显示一条警告消息,如抱歉应用程序遇到错误-实际上,您真正想要的是查找并删除代码中的错误!!我认为,如果他能找到放置try and catch块的位置,他肯定能找到并修复这些崩溃,这是理想的方式..7KV7,,你尝试tryCatch将是徒劳的:这个答案不会被标记为答案