anr 的全称是 application not response 即应用程序无响应
产生原因:由于主线程有很多重要事情要做,比如响应点击事件等。如果在主线程里做了太多耗时的操作,则有可能引发ANR。
如果你想模拟的话,比如在主线程里让主线程休眠6秒以上。Thread.sleep(6000);则会引发此状况。所以在4.0以上版本,如果在主线程里进行网络访问的操作,则会报错。
避免:尽量将耗时的操作放在子线程里。
本文介绍了ANR(Application Not Responding)的概念及其产生原因,指出当主线程执行耗时操作超过一定时限时,会导致ANR出现。文章还提供了一个简单的模拟方法,并建议通过子线程处理耗时任务来避免该问题。
anr 的全称是 application not response 即应用程序无响应
产生原因:由于主线程有很多重要事情要做,比如响应点击事件等。如果在主线程里做了太多耗时的操作,则有可能引发ANR。
如果你想模拟的话,比如在主线程里让主线程休眠6秒以上。Thread.sleep(6000);则会引发此状况。所以在4.0以上版本,如果在主线程里进行网络访问的操作,则会报错。
避免:尽量将耗时的操作放在子线程里。
1041

被折叠的 条评论
为什么被折叠?
