Android:避免由于未处理的错误而导致应用崩溃

|| 在我的Android应用中,我试图将
Try Catch
块放置在所有可能的位置。但是,我想避免由于任何未处理的错误而导致应用程序崩溃。我该如何实现? 我已经使用了
Thread.setDefaultUncaughtExceptionHandler(handler);
,但这只会帮助我获取崩溃数据,对吗?     
已邀请:
        为什么要这样做? 如果存在可以捕获异常并做有意义的事情的地方,即显示有用的警告,然后以一致且可用的状态继续运行应用程序,则可以。 如果您无法采取任何有意义的措施,那就让故障发生。有很多方法可以通知您所导致的故障,因此可以对其进行修复:例如,查看ACRA。或者,Android Developer控制台现在将报告您的市场分配的应用程序失败。     
        您可以使用以下方式:
public class MyApplication extends Application
{
  public void onCreate ()
  {
    // Setup handler for uncaught exceptions.
    Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler()
    {
      @Override
      public void uncaughtException (Thread thread, Throwable e)
      {
        handleUncaughtException (thread, e);
      }
    });
  }

 // here you can handle all unexpected crashes 
  public void handleUncaughtException (Thread thread, Throwable e)
  {
    e.printStackTrace(); // not all Android versions will print the stack trace automatically

    Intent intent = new Intent ();
    intent.setAction (\"com.mydomain.SEND_LOG\"); // see step 5.
    intent.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK); // required when starting from Application
    startActivity (intent);

    System.exit(1); // kill off the crashed app
  }
}
这将处理您的应用程序意外崩溃,这是从该答案中得出的。     
        我建议您在这里阅读有关ACRA的信息     
        所有错误和异常均从Throwable扩展。通过捕获Throwable,可以处理所有意外情况。但是捕获错误将没有结果。您只需要在应用程序崩溃之前在catch块中执行某项操作即可     
        看一看 android中异常处理的最佳实践 谢谢 迪帕克     

要回复问题请先登录注册