文档章节

ANR(应用程序无响应Applicatio Not Responding)

 梦想家Peng
发布于 2016/03/03 10:30
字数 234
阅读 23
收藏 0

ANR(应用程序无响应Applicatio Not Responding)
-----------------------------------
主线程的执行时间过长,就会导致ANR。
理论上Activity的执行时长超过5s,或BroadcastReceiver的执行时间超过10s,即会导致ANR。


Android UI线程模型
-----------------------------------
UI:User Interface
UI线程:在Android中,主线程的任务是加载布局、初始化控件、配置控件的各项属性及监听器、响应事件,这些任务都是与UI控件相关的,所以,Android中的主线程也称之为UI线程。
主线程的使用原则是:只处理和UI相关的业务,完成必要的初始化,其它任务尽量通过子线程来完成,避免导致ANR。
为了保证主线程的UI控件正确更新、显示等,在Android中不允许子线程更新UI控件(严格的说:只允许创建UI的线程更新UI)。



© 著作权归作者所有

共有 人打赏支持
上一篇: 关于Message
下一篇: 线程
粉丝 0
博文 34
码字总数 15605
作品 0
深圳
私信 提问
android ANR异常及其解决方式

ANR定义 在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择让程序...

长平狐
2012/09/03
360
0
Android中什么是ANR,如何应对或者如何避免它

可能会存在这样的情况,你写的代码通过了世界上所有的性能测试,但当用户尝试使用你的应用程序时,仍然让用户感到不爽。应用程序响应不够灵敏的地方包括——反映迟钝,挂起或冻结很长时间,或...

假装是大神
2012/03/25
0
0
android多线程handler+runOnUithread+view.post+handler.post

listview 可以暂时告一段落了。。。 下面说说android的多线程机制,讲到多线程,就可以说道android有名的ANR(Application Not Responding)既应用程序未响应,触发ANR的条件大致有两个:1、在...

yzh47200899
2013/08/13
0
0
Android ANR异常及解决方法

今天面试遇到这道题,刚开始没看出这个anr缩写的意思,后来问了面试官原来是这个意思: ANRs (“Application Not Responding”),意思是”应用没有响应“。 在如下情况下,Android会报出ANR...

恰同学少年
2015/08/05
0
0
ANR异常产生的原因及其解决办法

ANRs (“Application Not Responding”),意思是”应用没有响应“。 在如下情况下,Android会报出ANR错误: – 主线程 (“事件处理线程” / “UI线程”) 在5秒内没有响应输入事件 – Broadc...

byronhs
2015/09/30
300
0

没有更多内容

加载失败,请刷新页面

加载更多

一文了解JVM全部垃圾回收器,从Serial到ZGC

《对象搜索算法与回收算法》介绍了垃圾回收的基础算法,相当于垃圾回收的方法论。接下来就详细看看垃圾回收的具体实现。 上文提到过现代的商用虚拟机的都是采用分代收集的,不同的区域用不同...

公众号_Zack说码
1分钟前
0
0
用七牛云做小程序直播不用资质只需要公安备案

一般做小程序需要到live-pusher和live-player 分别用于推拉流但要求太严格一般商户满足不了这种情况 暂只针对国内主体如下类目的小程序开放,需要先通过类目审核,再在小程序管理后台,“设置...

xiaogg
5分钟前
0
0
spring2

Spring第二天 回顾: IOC:控制反转,把对象的创建权利反转给spring框架。 IOC的作用:解耦 Spring中的工厂: ApplicationContext ClassPathXmlApplicationContext FileSystemXmlApplication...

码农屌丝
15分钟前
1
0
Postman请求向后台传递List数据

前后台分离项目,使用Postman对写好的接口进行测试,请求类型为Post需要向后台传递List<String> list数据下面是后台控制层的java代码 @RequestMapping(value = "/del",method = RequestMetho...

王子城
19分钟前
1
0
Java并发编程的艺术:Condition的实现分析

ConditionObject是同步器AbstractQueuedSynchronizer的内部类,因为Condition的操作需要获取相关联的锁,所以作为同步器的内部类也较为合理。每个Condition对象都包含着一个队列(以下称为等...

陈刚生
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部