全局异常捕获机制

public class CrashHandler implements Thread.UncaughtExceptionHandler {

    Context context;

    volatile private static CrashHandler crashHandler;

    public CrashHandler(Context context) {
        this.context = context;
    }

    public static CrashHandler getInstance(Context context){
        if (crashHandler == null) {
            synchronized (CrashHandler.class){
                if (crashHandler == null) {
                    crashHandler=new CrashHandler(context.getApplicationContext());
                }

            }
        }
    return crashHandler;    
    }

    @Override
    public void uncaughtException(Thread t, Throwable e) {

        if (BuildConfig.DEBUG ) Log.d("aaa","uncaughtException:"+t.getName()+""+e.getMessage());
       android.os.Process.killProcess(android.os.Process.myPid());
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43584998/article/details/89576928
今日推荐