应用功耗优化

1.为什么要进行应用功耗优化
目的:提高手机续航
方法:1)开源(大容量电池,快充)。 2)节流(降低待机/场景功耗)。

2.应用功耗问题表现

  • 待机功耗:系统睡眠时频繁唤醒系统,掉电快。
  • 场景功耗:APP在前台,正常使用电流高。APP在后台,频繁运行,拉高平均电流。

3.应用界面对功耗的影响

  • 图片资源:图片色值明暗程度(越亮耗电越大)
  • 界面复杂度:图层和view数量多;view区域重叠(过度绘制),字体阴影等造成绘制任务重;图片裁减等增加运算复杂度。

4.LCD原理

  • TFT屏:需要外部光源照射,由显示模块和背光组成,有cabc(内容适配光线控制)则显示内容对功耗有影响,整体功耗大。
  • OLED屏:主动发光,硬件由显示模块构成,显示内容对功耗有影响,整体功耗低。

5.应用刷新策略对功耗的影响

  • 刷新控制:不必要的刷新(静止界面/后台界面),刷新频率,刷新区域
  • 动画控制:动画曲线(去掉界面无变化的部分刷新),动画时间

6.应用功能策略对功耗的影响

  • WakeLock:系统无法睡眠,熄屏流程
    触摸屏关闭-->等待所有的wakelock释放-->kernel待机流程(冻结进程(用户和内核空间)-->挂起设备(suspend)-->CPU进入休眠模式)
  • Alarm:频繁唤醒系统
  • 频繁重复广播:App频繁运行, 比如电量锁屏等广播。
    策略
    1)动态注册广播接收器
    2)同一个广播只注册一次广播接收器
    3)尽量不是用频繁触发的广播
  • 网络访问:Modern,Wifi工作
    心跳访问网络,后台不休眠。数据网络比WIFI耗电,网络切换频繁耗电
  • Gps,指纹识别,DLAN,Sensor模块工作
  • 频繁Log:拉高cpu频率和负载
  • 复杂的算法:cpu或gpu负载高。如高斯模糊算法

你可能感兴趣的:(应用功耗优化)