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.
}
}
我想制作一些 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.
}
}