我们可以在android中发生崩溃时执行某些操作

时间:2011-05-17 13:38:19

标签: android

我想在我的应用程序崩溃时执行我的应用程序的隐式注销。因此,当用户再次登录时,他将获得新数据,而不是由于崩溃导致的不完整数据。

1 个答案:

答案 0 :(得分:3)

您可以在每个可能崩溃的线程上注册Thread.UncaughtExceptionHandler。这将允许您在向Android报告崩溃之前添加一些额外的步骤。但要小心,因为如果您的代码在这些步骤中引发了另一个异常,您将永远不会收到崩溃报告到您的Android Market帐户。

基本上,将代码保存在未捕获的异常处理程序中尽可能简单。

以下是一个例子:

public class MyUncaughtExceptionHandler implements UncaughtExceptionHandler {
    private final UncaughtExceptionHandler defaultHandler;

    MyUncaughtExceptionHandler(){
        defaultHandler = Thread.getDefaultUncaughtExceptionHandler();
    }

    public void uncaughtException(Thread t, Throwable e) {
        //TODO: add your custom code here
        defaultHandler.uncaughtException(t,e);
    }  
}