Android ANR流程

103 阅读1分钟

3.1 哪些场景会造成ANR呢

ANR是基于Handler的机制,通过埋点定时消息来触发ANR,根据不同的上下文定时不同的消息,当程序正常运行结束时,移除该埋点消息。否则将会触发ANR。

Service Timeout:比如前台服务在20s内未执行完成,后台服务是10s。

BroadcastQueue Timeout:比如前台广播在10s内未执行完成,后台60s。

ContentProvider Timeout:内容提供者,在publish过超时10s。

InputDispatching Timeout: 输入事件分发超时5s,包括按键和触摸事件。