博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
省电管理功能说明书
阅读量:4147 次
发布时间:2019-05-25

本文共 2795 字,大约阅读时间需要 9 分钟。

1.省电管理-UI界面

  1. 省电模式
  2. 超级省电模式
  3. 应用智能省电
  4. 耗电详情
  5. 省电提醒

主界面

1. 省电模式

主要进行硬件开关的控制和清理一次应用

省电模式

配置信息

public final static int mPowerSaveBrightnessValue = (int) (0xFF * 0.45);    public final static int mPowerSaveScreenOffTimeoutValue = 30000;    public final static boolean mPowerSaveCloseRotationLock = true;    public final static boolean mPowerSaveCloseGps = false;    public final static boolean mPowerSaveCloseScreenSaver = true;    public final static boolean mPowerSaveCloseWifi = false;    public final static boolean mPowerSaveCloseWifiIfUnConn = true;    public final static boolean mPowerSaveCloseWifiAp = true;    public final static boolean mPowerSaveCloseBt = false;    public final static boolean mPowerSaveCloseBtIfUnConn = true;    public final static boolean mPowerSaveCloseGprs = false;    public final static boolean mPowerSaveCloseSyncAuto = true;    public final static boolean mPowerSaveCloseVibrateOnTouch = true;

2. 超级省电

主要进行硬件开关的控制和严格的进程管理

超级省电

public void startPowerSave() {        updateFlagStatue();        startSuperPowerConfig(mContext);        startGMSPowerSave();        startGooglePowerSave();        startBrightnessValuePowerSave();        startScreenOffTimeOutPowerSave();        startBlueToothPowerSave();        startWiFiPowerSave();        startWiFiApPowerSave();        startGprsPowerSave();        startSyncAutoPowerSave();        startScreenSaverPowerSave();        startRotationLockPowerSave();        startVibrateOnTouchPowerSave();        startCameraDoubleTapPowerSave();        startLockScreenShowNotificationPowerSave();        startPictorialSettingsPowerSave();        startGpsPowerSave();        startBlackGesturePowerSave();        mShareUtil.setShare(KEY_FLAG, mPublicFlag);    }

3. 应用智能省电

主要分为应用冻结,同步唤醒,自启动管理三项应用管控。

解决安装大量第三方应用带来的卡顿和待机发热问题。

实测700多个应用下可以进行合理的管控

应用智能省电

3.1 应用冻结,同步唤醒,自启动管理-UI

自启动管理.png

3.2 应用冻结,同步唤醒,自启动管理-功能介绍

  1. 应用冻结:防止应用全家桶或相互唤醒,暗屏4分钟后进行应用的清理和冻结
  2. 同步唤醒:根据当前系统唤醒情况对应用进行批量对齐,最长对齐时长5分钟
  3. 自启动管理:对应用后台启动进行动态监控和唤醒组件的进准阉割

4. 耗电详情

针对 frameworks\base\core\res\res\xml\power_profile.xml 进行校正得到较为准确的耗电数据

耗电详情

5. 省电友好提醒

5.1 低电量提醒

当电量在20%,15%,5%的低电量下会触发低电量提醒

  • 20%的低电量提醒

20

  • 15%的低电量提醒

15

  • 5%的低电量提醒

5

5.2 满电提醒

可以使用 adb shell dumpsys battery set level 100 进行快速调试

100%

5.3 高温自动关机保护

可以使用 adb shell “echo 55> /sys/devices/platform/battery/Battery_Temperature”

进行模拟测试

shutdown

2.省电管理-系统后台省电

2.1 AAL 屏幕省电

主要根据屏幕背光进行省电

2.2 Google Doze 模式优化

主要进行待机的唤醒和jobscheduler管理,主要分为light和deep的两个睡眠模式

2.3 应用限制

主要进行前台进程资源优先,后台进程被限制,adj中级别过低的,会被及时清理

2.4 Google省电模式

网络防火墙管理,主要对后台进程限制过度调用网络资源

2.5 待机省电

优化了lte模式下的省电,防止modem的耗电异常

2.6 背光亮度控制

对高耗电场景尤其是游戏和视频进行无感知的亮度控制

2.7 夜间省电模式

比较普通模式提升1倍的夜间待机时长

2.8 动态进程阻断机制

防止后台进程异常启动

2.9 PPS帧率控制

针对界面级进行帧率控制,尤其是游戏的动态场景

2.10 CPU场景控制

针对界面级和常用场景进行CPU核数和频率的控制,个别情况下可以适当修改CPU电压改善功耗异常

2.11 SW转换为HW解码

部分视频白名单进行硬解码,达到省电效果

2.12 智能后台管理

常用应用后台正常运行,即使白名单应用如果长期不使用也会被kill

3.省电管理-后续方向

针对7万个应用进行分类并记录应用使用情况,场景化优化,例如不同场景进行帧率和CPU、分辨率控制等等

你可能感兴趣的文章
九度:题目1034:寻找大富翁
查看>>
第六章 背包问题——01背包
查看>>
51nod 分类
查看>>
1136 . 欧拉函数
查看>>
面试题:强制类型转换
查看>>
Decorator模式
查看>>
Template模式
查看>>
Observer模式
查看>>
高性能服务器设计
查看>>
性能扩展问题要趁早
查看>>
MySQL-数据库、数据表结构操作(SQL)
查看>>
OpenLDAP for Windows 安装手册(2.4.26版)
查看>>
图文介绍openLDAP在windows上的安装配置
查看>>
Pentaho BI开源报表系统
查看>>
Pentaho 开发: 在eclipse中构建Pentaho BI Server工程
查看>>
JSP的内置对象及方法
查看>>
android中SharedPreferences的简单例子
查看>>
android中使用TextView来显示某个网址的内容,使用<ScrollView>来生成下拉列表框
查看>>
andorid里关于wifi的分析
查看>>
Spring MVC和Struts2的比较
查看>>