zoukankan      html  css  js  c++  java
  • 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
    ");
    +               /*------------电池电量一直显示100%------------*/
    +               mBatteryFixedCapacity = FAKE_BATTERY_CAPACITY;    //电量 level
    +               mBatteryFixedTemperature = FAKE_BATTERY_TEMPERATURE;    //温度 temperature
    +               mBatteryDevicePresent = true;
    +               /*------------------------------------------------*/
    +       }
         if (!mBatteryDevicePresent) {
             KLOG_WARNING(LOG_TAG, "No battery devices found
    ");
             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:

  • 相关阅读:
    图形设计 X11
    软件安装 RPM SRPM YUM
    如何将excel表格中的纯数字删掉 空白行,然后删除
    考试机
    程序编译与运行
    基础设定与备份策略
    开机流程 模块管理 Loader
    让所有Excel数据格全部乘 某个数
    转:JDK1.8-Stream()使用详解
    转:IK分词原理
  • 原文地址:https://www.cnblogs.com/lialong1st/p/8276042.html
Copyright © 2011-2022 走看看