Android消息机制及Handler与Looper和Message的关系

本文详细介绍了Android中的消息机制,包括Looper、Handler与Message之间的关系。解释了如何通过Handler发送消息给MessageQueue,Looper如何读取消息并回调Handler的handleMessage方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Android 消息机制:

主线程在创建完后,会创建个Looper 类不停的循环。

直到读取到Message Queue消息队列的消息,处理响应消息然后移除消息。继续循环。

(只要有一个消息遇到了耗时操作,会导致其他消息无法响应,这就是ANR的产生的原因)


二、Handler 与Looper 及Message的关系


Handler 可以发送消息Message 给Message Queue消息队列,Looper读到Message消息,

并响应消息回调Handler 的handleMessage方法(这个方法是运行在主线程中的)。


三、下面是一个使用简单列子

发送消息给消息队列

    mHandler.sendEmptyMessage(RESULT_OK);


复写回调方法

    Handler mHandler=new Handler(){
    	@Override
    	public void handleMessage(Message msg) {
    		// TODO Auto-generated method stub
    		super.handleMessage(msg);
    		/**
    		 * Looper回调此方法,复写这个方法
    		 */
    	}
    };


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值