ANR检测

作者: deviche | 来源:发表于2019-12-05 11:48 被阅读0次

ANR检测工具类

public class ANRWatchDog extends Thread { public static final int MESSAGE_WATCHDOG_TIME_TICK = 0; /** * 判定Activity发生了ANR的时间,必须要小于5秒,否则等弹出ANR,可能就被用户立即杀死了。 */ public static final int ACTIVITY_ANR_TIMEOUT = 2000; private static int lastTimeTick = -1; private static int timeTick = 0; private Handler watchDogHandler = new android.os.Handler() { @Override public void handleMessage(Message msg) { timeTick++; timeTick = timeTick % Integer.MAX_VALUE; } }; @Override public void run() { while (true) { watchDogHandler.sendEmptyMessage(MESSAGE_WATCHDOG_TIME_TICK); try { Thread.sleep(ACTIVITY_ANR_TIMEOUT); } catch (InterruptedException e) { e.printStackTrace(); } //如果相等,说明过了ACTIVITY_ANR_TIMEOUT的时间后watchDogHandler仍没有处理消息,已经ANR了 if (timeTick == lastTimeTick) { throw new ANRException(); } else { lastTimeTick = timeTick; } } }}

public class ANRException extends RuntimeException { public ANRException() { super("应用程序无响应,快来改BUG啊!!"); Thread mainThread = Looper.getMainLooper().getThread(); setStackTrace(mainThread.getStackTrace()); }}

Application类

public void onCreate() { if (BuildConfig.DEBUG){//debug模式暂时保留 检测anr工具类 new ANRWatchDog().start(); }}

相关文章

  • ANR检测

    ANR检测工具类 public class ANRWatchDog extends Thread { pub...

  • Android ANR检测

    什么是ANR? ANR(Application Not Responding),即应用程序无响应,它会严重影响用户...

  • Android UI 卡顿及ANR检测原理

    [转]Android UI 卡顿及ANR检测原理[https://www.jianshu.com/p/a7dfac...

  • ANR原理与问题分析

    ANR工作原理Application Not Responding,应用程序无响应。工作线程向检测线程发送请求,检...

  • (转载)Android 耗时代码(ANR)的查找检测和分析解决

    原文链接:Android 耗时代码(ANR)的查找检测和分析解决 TraceView的使用手册 - CSDN博客...

  • Android ANR 机制

    Broadcast ANR[#broadcast-anr] Service ANR[#service-anr] C...

  • App测试

    App测试关注点:ANR、APM ANR 一、ANR是什么 ANR(Application Not Respond...

  • ANR系列

    ANR(0)---理解Android ANR的触发原理ANR(1)---理解Android ANR的信息收集过程A...

  • anr

    anr的避免与监测:严格模式StrictMode是android提供的检测代码中是否存在违规操作的工具。 此工具主...

  • Android ANR:原理分析及解决办法

    目录:一、ANR说明和原因二、ANR分析办法三、如何降低ANR的概率四、造成ANR的原因及解决办法五、ANR源码分...

网友评论

      本文标题:ANR检测

      本文链接:https://www.haomeiwen.com/subject/rvddgctx.html