![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android Power
文章平均质量分 81
zhenjie_chang
这个作者很懒,什么都没留下…
展开
-
PowerManagerService的启动流程
PowerManagerServcie是android系统电源管理的核心服务,它在Framework层建立起一个策略控制方案,向下决策HAL层以及kernel层来控制设备待机状态,控制显示屏,背光灯,距离传感器,光线传感器等硬件设备的状态。向上提供给应用程序相应的操作接口,比如听音乐时持续保持系统唤醒,应用通知来临唤醒手机屏幕等场景等,PMS也是系统的核心服务,启动流程的时序图如下:启动流程时原创 2016-09-12 09:24:36 · 3060 阅读 · 0 评论 -
Power按键流程分析
从InputManagerService分析我们知道,当按下手机的Power键之后,按键事件会传到InputDispatcher 的notifyKey 方法,然后调用到调用了NativeInputManager的interceptKeyBeforeQueueing函数,最终在这个函数中会调用到PhoneWindowManager中的interceptKeyBeforeQueueing函数,以上主要原创 2016-09-12 14:01:35 · 5684 阅读 · 0 评论 -
PowerManager的用法分析
在分析PMS的工作原理之前,我们先来分析下PowerManager的用法PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");原创 2016-09-08 19:58:07 · 8042 阅读 · 0 评论 -
Android Doze模式分析
Android 6.0 Doze模式分析Doze模式是Android6.0上新出的一种模式,是一种全新的、低能耗的状态,在后台只有部分任务允许运行,其他都被强制停止。当用户一段时间没有使用手机的时候,Doze模式通过延缓app后台的CPU和网络活动减少电量的消耗。PowerManagerService中也有Doze模式,和此处的Doze模式不一样,其实此处叫Device Idle模式更原创 2016-09-12 15:01:23 · 26540 阅读 · 1 评论 -
BatteryStatsService电池电量统计服务分析
BatteryStatsService主要负责电池电量的统计信息,首先我们简单的看下电量统计服务的启动过程。BatteryStatsService启动过程从BatteryStatsService的启动时序图可以看出,BatteryStatsService服务是在ActivityManagerService服务中启动的1. 在SystemServer中startBoots原创 2016-09-12 14:39:34 · 5854 阅读 · 1 评论 -
BatteryService服务分析
BatteryService是在systemServer启动核心服务的时候启动的。同样我们按照PMS启动的流程来分析BatteryService的启动流程。1.BatteryService的构造方法BatteryService的构造方法比较简单,只是从资源中获取一些预定的值电量统计服务mBatteryStats = BatteryStatsService.getServi原创 2016-09-12 14:22:36 · 5226 阅读 · 0 评论