`
lichangjielong
  • 浏览: 21150 次
社区版块
存档分类
最新评论

ANR

 
阅读更多
一、ANR产生
1.对于Activity,在5秒内没有响应输入的事件(例如,按键按下,屏幕触摸)
2.对于BroadcastReceiver,在10秒内没有执行完毕

二、ANR避免
1.对于Activity,主线程里不做耗时操作。数据库、网络、耗时计算(如比特图位移)用子线程做,把结果用hangdler方式返回主线程。
2.对于BroadcastReceiver,在IntentReceiver里,只做耗时小的操作,如保存设定或者注册一个Notification。对于耗时操作,应启动一个Service来完成。另外,在IntentReceiver里,不要启动Activity,而应该用Notification来处理。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics