杂记Android知识技术文

Android自定义全局异常捕获

2015-07-15  本文已影响2493人  MrRock

众所周知,Android程序在运行时遇到未处理的错误,会弹出类似程序异常退出之类的dialog,然后自动关闭。
那么这里介绍捕获全局未知异常和修改那个弹出的dialog的方法。

//当程序发生Uncaught异常时捕获
Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler(){   
    @Override   
public void uncaughtException (Thread thread, Throwable e)   {      
    //做你要做的处理,比如把e.getMessage()保存到文件,发送一个email等等,不是本篇重点,不再赘述  
}});

这里Thread.UncaughtExceptionHandler()可以另写一个类来继承它,重构代码的事这里就不赘述了。

自定义一个Activity来代替Dialog的功能

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
System.exit(1);//关闭已奔溃的app进程

特别注意

上一篇 下一篇

猜你喜欢

热点阅读