android 上的运行时错误处理

Runtime error handling on android

我想制作一些 classes 来捕获 android 上的运行时错误,并为用户提供恢复上次保存的应用程序实例状态的选项。

我正在考虑扩展 Activity 和 Fragment classes 并实现一些可以保存它们状态的东西。与此同时,另一个 class 处理每个 activity 或片段的开始,将它们放入堆栈中。

我想捕获应用中所有可能的异常,希望能减少错误对用户的困扰。

关于我应该如何处理这个问题有什么建议吗?

此错误检查将如何影响应用程序的性能?

您可以使用 try catch 块来捕获运行时错误。如果你有效地使用 try catch 和 throws 你的应用程序不会首先崩溃,因此不需要维护活动堆栈。顺便说一句,在既不节省内存又不可取的情况下维护先前 activity 的堆栈。

这不是一个好的解决方案,我不知道它是否对你有用,但你可以在应用程序中捕获异常 Class。

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);
      }
    });
  }

  public void handleUncaughtException (Thread thread, Throwable e)
  {
    e.printStackTrace(); 
    // do what ever you want.
  }
}