Android 耗电优化

Battery-Historian

官方网站:https://developer.android.com/topic/performance/power/battery-historian?hl=zh-cn

安装:

  • 源码安装
  • docker 安装

优化建议:

  • 加入电量白名单

  • GPS 优化

    • 选择合适的定位模式
    • 选择合适的定位间隔
    • 不用及时注销
  • 不是紧急的文件可以选择用户连接 wifi 在上传,同时配个一定的规则,避免用户一直使用 4G 环境(可以选择如果在多少时间内网络状态还是 wifi 并且在充电状态下可以选择上传大文件,比如 APP 日志等)

  • 慎用 WakeLock 唤醒 CPU

    • 亮屏替换://在Activity中:
      getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

      //或在布局中添加这个属性:
      android:keepScreenOn=”true”

    • alarm 闹钟让 CPU 间断式工作

  • JobScheduler (8.0 后 Google 推荐使用)

    • 把工作任务放到合适的时间再去执行,比如充电时间,wifi 连接后
    • 可以把多个任务合并到一起,再选择时间去执行
    • 在充电并且连接 wifi 的状态下发送数据(这里旋转屏幕是为了发送数据用的)
  • 减少 View 绘制,借鉴 布局优化

  • 复杂计算尽量使用 native 处理

  • 硬编码替换软编码,降低 CPU 负荷

  • TCP 心跳机制建议 30s 以后

  • 定时器任务如果不是特殊的也尽量在 30s 以后


备注

参考资料: