ANR: Application not responding。在Android里,应用程序的响应性是由Activity Manager和WindowManager系统服务监视的 。当它监测到以下情况中的一个时,Android就会针对特定的应用程序显示ANR:
1.在5秒内没有响应输入的事件(例如,按键按下,屏幕触摸)
2.BroadcastReceiver在10秒内没有执行完毕
主要是将耗时操作,如网络请求,IO操作等放在主线程中运行导致的,解决办法是利用异步操作来完成耗时操作,尽量在主线程上执行UI相关操作,这样做既可以避免ANR,又可以很大程度上提高程序流畅度。