没有合适的资源?快使用搜索试试~ 我知道了~
Android的Message机制(Handler、Message、Looper)
需积分: 41 10 下载量 32 浏览量
2017-02-16
10:49:30
上传
评论
收藏 483KB DOCX 举报
温馨提示
试读
39页
对于Android的Message机制主要涉及到三个主要的类,分别是Handler、Message、Looper;首先对每个类做一个简单介绍;然后再介绍所谓的Android的Message机制是如何实现的,最后给了一个示例。
资源推荐
资源详情
资源评论
相关源码
一、概述
在整个 Android
的源码世界里,有两大利剑,其一是 Binder IPC 机制,,另一个便是消息机制(由 Handler/Looper/MessageQueue 等
构成的)。关于 Binder 在 Binder
系列 中详细讲解过,有兴趣看看。
Android
有大量的消息驱动方式来进行交互,比如 Android
的四剑客 Activity, Service, Broadcast, ContentProvider 的启动过程的交互,
都离不开消息机制,Android
某种意义上也可以说成是一个以消息驱动的系统。消息机制涉及 MessageQueue/Message/Looper/
Handler 这 4 个类。
1.1 模型
消息机制主要包含:
Message:消息分为硬件产生的消息(如按钮、触摸)和软件生成的消息;
MessageQueue:消息队列的主要功能向消息池投递消息(MessageQueue.enqueueMessage)和取走消息池的消息
(MessageQueue.next);
Handler:消息辅助类,主要功能向消息池发送各种消息事件(Handler.sendMessage)和处理相应消息事件
(Handler.handleMessage);
Looper:不断循环执行(Looper.loop),按分发机制将消息分发给目标处理者。
1.2 架构图
Looper 有一个 MessageQueue 消息队列;
MessageQueue 有一组待处理的 Message;
Message 中有一个用于处理消息的 Handler;
Handler 中有 Looper 和 MessageQueue。
1.3 典型实例
先展示一个典型的关于 Handler/Looper 的线程
!!"
!
!!#$
!!!!#$"!【见 %&】
!
!!!!'#$ !【见 (&】
!!!!!!#$
!!!!!!!!)*)!!定义消息处理逻辑【见 (%】
剩余38页未读,继续阅读
资源评论
happyguys12345
- 粉丝: 45
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功