- 主线程被IO操作(从4.0之后网络IO不允许在主线程中)阻塞。
- 主线程中存在耗时的计算
- 主线程中错误的操作,比如Thread.wait或者Thread.sleep等
Android系统会监控程序的响应状况,一旦出现下面两种情况,则弹出ANR对话框
- 应用在5秒内未响应用户的输入事件(如按键或者触摸)
- BroadcastReceiver未在10秒内完成相关的处理
基本的思路就是将IO操作在工作线程来处理,减少其他耗时操作和错误操作
Android系统会监控程序的响应状况,一旦出现下面两种情况,则弹出ANR对话框
基本的思路就是将IO操作在工作线程来处理,减少其他耗时操作和错误操作