RK3288 手动设置电池电量

参考:[RK3288][Android6.0] 调试笔记 --- 电池电量一直显示100%

系统版本:RK3288 android 5.1 (与参考的变量和宏有点区别)

设备没有电池,在进行Fota升级时,提示电量不能低于30%,外接电源,可是读出来的电量是0%,无法进行升级,只能手动设置电池电量。

$ adb shell dumpsys battery  //通过adb查询电池信息
Current Battery Service state:
  AC powered: false
  USB powered: false
  Wireless powered: false
  status: 1
  health: 1
  present: true
  level: 0  //电池电量
  scale: 100
  voltage: 0
  temperature: 0
  technology:

diff --git a/system/core/healthd/BatteryMonitor.cpp b/system/core/healthd/BatteryMonitor.cpp
old mode 100644
new mode 100755
index d317b28..6b37dee
--- a/system/core/healthd/BatteryMonitor.cpp
+++ b/system/core/healthd/BatteryMonitor.cpp
@@ -35,7 +35,7 @@
 
 #define POWER_SUPPLY_SUBSYSTEM "power_supply"
 #define POWER_SUPPLY_SYSFS_PATH "/sys/class/" POWER_SUPPLY_SUBSYSTEM
-#define FAKE_BATTERY_CAPACITY 42
+#define FAKE_BATTERY_CAPACITY 100
 #define FAKE_BATTERY_TEMPERATURE 424
 
 namespace android {
@@ -513,8 +513,14 @@ void BatteryMonitor::init(struct healthd_config *hc) {
         closedir(dir);
     }
 
-    if (!mChargerNames.size())
+    if (!mChargerNames.size())  {
         KLOG_ERROR(LOG_TAG, "No charger supplies found\n");
+               /*------------电池电量一直显示100%------------*/
+               mBatteryFixedCapacity = FAKE_BATTERY_CAPACITY;    //电量 level
+               mBatteryFixedTemperature = FAKE_BATTERY_TEMPERATURE;    //温度 temperature
+               mBatteryDevicePresent = true;
+               /*------------------------------------------------*/
+       }
     if (!mBatteryDevicePresent) {
         KLOG_WARNING(LOG_TAG, "No battery devices found\n");
         hc->periodic_chores_interval_fast = -1;

$ adb shell dumpsys battery
Current Battery Service state:
  AC powered: false
  USB powered: false
  Wireless powered: false
  status: 1
  health: 1
  present: true
  level: 100  //电池电量
  scale: 100
  voltage: 0
  temperature: 424
  technology:

 

转载于:https://www.cnblogs.com/lialong1st/p/8276042.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值