【架构分析】Android锁屏与Activity生命周期的变化

本文深入探讨了Android设备从开机到进入锁屏再到休眠的过程,特别是HomeLaunchActivity的生命周期变化及AMSholdwakeuplock机制如何确保设备顺利进入省电模式。

概述

Android开机启动后默认会先进入锁屏然后灭屏休眠, 本文旨在介绍这个过程中最先启动的Home Launch Activity (其实在Android N上最早被启动的是Settings中的FallbackHome Activity) 如何发生相关的生命周期变化, 以及AMS hold wakeup lock和释放wakeup lock确保设备可以进入省电休眠状态

Framework分析

这里写图片描述

如上面的时序图所示1.1.1 步骤中AMS hold了mGoingToSleep这个wakeup lock 一旦1.1.1.1 checkReadyForSleepLocked的if (!mService.isSleepingOrShuttingDownLocked()) 条件检查失败,就会导致后续期望的Activity Pause生命周期调度没有发生, 进而使得整个流程中最后4.1.1中释放mGoingToSleep wakeup lock的回调没有来到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值