Android源码笔记--电量
Posted ljt2724960661
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android源码笔记--电量相关的知识,希望对你有一定的参考价值。
这一节主要了解电源更新,源码中一般是通过xxxLocked来实现。函数updatePowerStateLocked 的功能是更新电源状态的锁定,通过把影响到 PowerManagement 发生变化的放在一起进行更新,函数updatePowerStateLocked的具体实现代码如下所示:
/frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java
private void updatePowerStateLocked()
if (!mSystemReady || mDirty == 0)
return;
if (!Thread.holdsLock(mLock))
Slog.wtf(TAG, "Power manager lock was not held when calling updatePowerStateLocked");
Trace.traceBegin(Trace.TRACE_TAG_POWER, "updatePowerState");
try
// Phase 0: Basic state updates.
updateIsPoweredLocked(mDirty);
updateStayOnLocked(mDirty);
updateScreenBrightnessBoostLocked(mDirty);
// Phase 1: Update wakefulness.
// Loop because the wake lock and user activity computations are influ
以上是关于Android源码笔记--电量的主要内容,如果未能解决你的问题,请参考以下文章
ChatGPT解答:安卓APP耗电量测试方案和源码,用Android代码实现