![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android面试-Handler讲解
文章平均质量分 93
mayundoyouknow
喜欢运动,爱思考
展开
-
Android之ANR问题分析,触发原理,解决办法
1.ANR是什么?Application Not Responding,字面意思就是应用无响应,稍加解释就是用户的一些操作无法从应用中获取反馈;在实际的应用中应当去避免这种现象,虽然它暂时不会造成应用崩溃,但是却极大地损坏用户体验;2.ANR触发原因出现ANR之后一个直观的现象就是系统会展示出一个ANR对话框,如图:Android系统中,ActivityManagerService(简称AMS)和WindowManagerService(简称WMS)会检测APP的响应时间,如果AP...原创 2021-10-19 13:56:02 · 10097 阅读 · 1 评论 -
Handler通信机制Message,MessageQueue,Handler,Looper讲解及常见面试问题
1.Handler机制常见问题1)Handler机制基本流程;2)Handler机制都处理哪些类型消息;3)Handler发送和处理消息的方式有哪些种?4)Looper的loop下for循环为什么不会导致ANR?5)处理消息的先后顺序如何控制?6)Looper如何主线程绑定,在其他线程如何使用Looper?7)Message分几种类型,同步和异步?8)Handler设计思路是什么?...原创 2021-10-14 16:33:39 · 806 阅读 · 0 评论 -
面试官:“Handler的runWithScissors()了解吗?为什么Google不让开发者用?“
一、序runWithScissors()是 Handler 的一个方法,被标记为 @hide,不允许普通开发者调用。这个方法算是比较冷门,如果面试中被问及,面试者不知道时,通常面试官会换个问法:"如何在子线程通过 Handler 向主线程发送一个任务,并等主线程处理此任务后,再继续执行?"。这个场景,就可以借助runWithScissors()来实现。虽然该方法被标记为 @hide,但是在 Framework 中,也有不少场景使用到它。不过它也有一些隐患,正是因为这些隐患,让 Androi...转载 2021-02-16 19:03:01 · 212 阅读 · 1 评论