Android R framework修改低电量关机值为2%

本文介绍了在Android R系统中,如何修改framework以将低电量关机值调整为2%。通过分析BatteryService源码,了解电池状态管理和电量变化处理,特别是关注了HealthHal回调、BroadcastIntent ACTION_BATTERY_CHANGED的发送以及在BatteryService中的processValuesLocked方法中如何判断并执行关机操作。通过修改shouldShutdownLocked方法,当电池电量低于2%时触发关机。
摘要由CSDN通过智能技术生成

问题背景

在R的系统rom产品开发中,在系统关于低电量关机的值,每个平台都不同,根据实际开发底层硬件的要求看实际情况来调整这个值,所以需要分析相关的电量变化执行的代码流程,来实现这个功能。

修改关键类

frameworks\base\services\core\java\com\android\server\BatteryService.java

系统framework修改低电量关机值为2%的核心功能分析和实现

BateryService 作为电池及充电相关的服务:监听 Uevent、读取sysfs 里中的状态、广播IntentACTION BATTERY CHANGED.BattervService实现,了一个UevenObserver mUEventObserver,uevent是Linux内核用来向用户空间主动上报事件的机制,对于 JAVA程序来说,只实现 UEventObserver的虛函数 onUEvent,然后注册即可。BattervService只关注 power supply 的事件,主要是通过在驱动层上报的电池相关的信息处理,同时对于电量的变化,也同样在BatteryService.java中处理,在电量过低 电池发烫等等事件处理关于电池的信息,电压,温度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值