4.3.1. Activity 生命周期

优质
小牛编辑
136浏览
2023-12-01

4.3.1.Activity 生命周期

因为涉及到新建Linux进程、为UI对象申请内存、解析XML文件以及最终的图像渲染,初始化Activity的成本是比较高的。既然在初始化上面花了这么大功夫,那么每次离开Activity就将其销毁就未免太浪费了。在这方面,Android引入了Activity Manager机制,用以自动管理Activity的生命周期。

Activity的创建、销毁、管理皆由Activity Manager全权负责。如果用户首次启动了某程序,Activity Manager会负责程序界面的初始化与显示;如果用户要切换界面,Activity Manager将原先的界面隐藏而不是销毁,这样可以加速下次访问;Activity Manager也负责销毁长时间未访问的Activity,为当前活跃的Activity腾出更多内存空间。引入Activity Manager机制的动机就是提升用户界面的速度,这对用户体验很重要。

图 4.1. Activity的生命周期

Android的编程环境有些独特的地方,那就是在Android开发中,你会发现自己更多是对程序状态的迁移做出响应,而很少需要主动控制它的状态。在托管的环境中添加自己的业务逻辑,这点倒是与Java的applet与servlet有些相似。因此谈及Activity的生命周期,我们很少关心它的当前状态,而对它的状态迁移更感兴趣。图4.1 Activity的生命周期展示了Activity各个状态之间的迁移关系。