当前位置: 首页 > news >正文

OpenHarmony 5.0状态栏息屏状态下充电然后亮屏会出现电量跳变情况

1.背景

在OpenHarmony 5.0中在息屏状态下充电一段时间突然亮屏,状态栏的电量会出现跳变情况

2.解决方案

是由于有一个策略导致在息屏状态下会关闭对底层的电量监听,然后在亮屏状态下在打开此监听,所以导致在亮屏状态下会有电池电量跳变情况

解决方案patch如下:

--- a/XXX/OHOS_5.0_ScreenLock/features/batterycomponent/src/main/ets/default/batteryModel.ts
+++ b/XXX/OHOS_5.0_ScreenLock/features/batterycomponent/src/main/ets/default/batteryModel.ts
@@ -60,7 +60,7 @@ export class BatteryModel {this.mBatterySoc = AppStorage.SetAndLink("batterySoc", 0);this.mBatteryCharging = AppStorage.SetAndLink("batteryCharging", false);this.mManager.subscriberCommonEvent();
-    this.mManager.applyPolicy([POLICY.SCREEN_POLICY]);
+    // this.mManager.applyPolicy([POLICY.SCREEN_POLICY]);}unInitBatteryModel() {
-- 
GitLab

上述是对锁屏的电量跳变问题解决方案,如果想更进一步优化,在极端情况下亮屏立即打开锁屏状态栏也不会跳变的话则需要在systemui的状态栏中进行优化,如下:

--- a/xxx/OHOS_5.0_SystemUI/features/batterycomponent/src/main/ets/default/batteryModel.ets
+++ b/xxx/OHOS_5.0_SystemUI/features/batterycomponent/src/main/ets/default/batteryModel.ets
@@ -115,7 +115,7 @@ export class BatteryModel {this.mBatterySoc = AppStorage.SetAndLink("batterySoc", 0);this.mBatteryCharging = AppStorage.SetAndLink("batteryCharging", false);this.mManager.subscriberCommonEvent();
-    this.mManager.applyPolicy([POLICY.SCREEN_POLICY]);
+    // this.mManager.applyPolicy([POLICY.SCREEN_POLICY]);}unInitBatteryModel() {
-- 

http://www.xdnf.cn/news/521209.html

相关文章:

  • 19-I2C库函数
  • ProfibusDP转ModbusRTU的实用攻略
  • WindowsPE文件格式入门11.资源表
  • 算法-js-柱状图中最大的矩形
  • 计算机系统的层次结构
  • 采摘桑葚
  • 中级网络工程师知识点6
  • 掌握生成式 AI 的未来:Google Cloud 全新认证
  • Office 中 VBE 的共同特点与区别
  • 【typenum】 12 类型级数组(array.rs)
  • Node.js 框架
  • 20-HAL库
  • 进程控制总结
  • Spyglass:参数(parameter)及其设置方式
  • 考研数学积分学
  • supervisorctl守护进程
  • PCB设计实践(十九)PCB设计中NPN/PNP选型策略
  • C++(23):容器类<vector>
  • C++控制结构详解:if-else、switch、循环(for/while/do-while)
  • 嵌入式学习笔记 - U(S)ART 模块HAL 库函数总结
  • 开启健康生活的多元养生之道
  • Prism使用消息总线打开窗体的案例(中介者模式)
  • GBS 8.0服装裁剪计划软件在线试用
  • SAPROv5.7
  • Muduo网络库大总结
  • 大语言模型 vs NLTK/SpaCy:NLP工具的代际跃迁与互补之道
  • LORA 微调 - LoRA 介绍与 LoRA 微调指南
  • 最长公共子序列(LCS)
  • 网络编程套接字(二)
  • 17 C 语言数据类型转换与数据溢出回绕详解:隐式转换、显式转换、VS Code 警告配置、溢出回绕机制