一切从android的handler说起(六)之四大组件生命周期起源

本文揭示了Android系统如何通过Handler消息机制驱动四大组件(如Activity)的生命周期,包括如何通过Binder IPC通信与ActivityManagerService交互,以及理解生命周期背后的事件驱动模型和设计思想。学习这些底层原理有助于提升Android开发的深入理解和实践。
摘要由CSDN通过智能技术生成

阅读本文大概需要 4 分钟。

 

 

上一篇,我们了解到Android里触摸事件是如何一步一步转入UI线程的message queue里被执行的,这种事件是由外部事件触发的。

 

我接着对小张说:其实Android里还有一种UI queue里的事件更为大家熟知,你天天写代码都在与之打交道,你知道吗?

小张有些丈二和尚摸不着头脑,想了一会儿问道:能给一些提示吗?

 

我提示道:它是Android系统框架层产生的事件,你在四大组件上写的代码均无法逃脱它的掌控!

小张虽然不是很清楚为什么,但是由于提示太明显,问道:你说的难道是四大组件的生命周期?

 

我肯定道:没错,比如你天天写Activity,在其onCreate, onResume等生命周期里写业务代码,那你知道四大组件的生命周期是怎么来的吗?

小张怀疑到:难道它们也是handler消息机制触发的吗?

 

我说道:你没有听错!就连四大组件的生命周期也遵循了这个事件驱动模型,它们均是由Android系统框架层产生相应的message扔进UI queue触发的。

 

小张紧接着问道:如果这样的话,UI线程里必然存在一个handler在处理对应的message,以辨别这个message是哪个组件,是什么生命周期阶段。

 

我点了点头,道:你说得没错!你在Android源码里见过这个handler吗?

小张摇了摇头:我平时业务做得比较多,对Android系统框架层的源码看得比较少。

 

我听了后说道:那你平时可得多关注关注一些底层原理类的东西了,业务是永远在变动,而越是底层的东西越是相对稳定的,只有弄清楚基础才能知其所以然,更好的为业务服务。

小张听后,连忙点头:你说得是,回去一定恶补这块短板。

 

我继续说道:好了,Android源码里有个ActivityThread内部类H就是刚才所说的handler了,你看看它的源码,你就知道它都在干些什么了。

 <

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值