debug (屏蔽)--- android

CrashHelper.init(new CrashHandler() {

   @Override
   public void uncaughtException(Thread t, Throwable e) {
    
      Log.e("LiNing", "此处有bug");
      e.printStackTrace();
   }
});

自己封装类:

public class CrashHelper {
    private CrashHandler mCrashHandler;

       private CrashHelper() {

       }

       private static CrashHelper getInstance() {
           return CrashHelperHolder.crashHandler;
       }


       private static class CrashHelperHolder {
           private static final CrashHelper crashHandler = new CrashHelper();
       }

       public static void init(CrashHandler crashHandler) {
           getInstance().setCrashHandler(crashHandler);
       }

       private void setCrashHandler(CrashHandler crashHandler) {

           mCrashHandler = crashHandler;
           new Handler(Looper.getMainLooper()).post(new Runnable() {
               @Override
               public void run() {
                   for (; ; ) {
                       try {
                           Looper.loop();
                       } catch (Throwable e) {
                           if (mCrashHandler != null) {//捕获异常处理
                               mCrashHandler.uncaughtException(Looper.getMainLooper().getThread(), e);
                           }
                       }
                   }
               }
           });

           Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
               @Override
               public void uncaughtException(Thread t, Throwable e) {
                   if (mCrashHandler != null) {//捕获异常处理
                       mCrashHandler.uncaughtException(t, e);
                   }
               }
           });

       }

       public interface CrashHandler {
           void uncaughtException(Thread t, Throwable e);
       }
}

转载于:https://my.oschina.net/u/3776061/blog/2966754

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值