根据电池耗电软件app应该减少耗电的操作,应遵循以下几个原则:
一、尽量让CPU休眠
- 锁屏、灭屏、程序放置后台时,释放或停止android涉及耗电服务。如包括GPS、WifiManager、Sensor等
- 锁屏、灭屏释放WakeLock。必须释放WakeLock,无论是间接还是直接的,否则会让CPU无法休眠,导致严重的耗电问题。
- 使用缓存和批量预处理来提升算法效率。
例如一下场景:
1、当需要进行wifi扫描或者蓝牙扫描时,需要先判断当前手机设备是否黑屏,如果黑屏了就不进行扫描。
2、使用AlarmManager时一定要考虑多种情况,尤其是要充分考虑网络变动、用户登陆状态改变等场景。如果多个功能需要通过AlarmManager实现时,最好能够将多个功能合并到一个AlarmManager的广播接收函数中实现(在函数中调用多个功能)。尤其是当这几个功能的唤醒周期、异常处理逻辑比较相近时,一定要放在一起实现,后续维护也会更加方便。
3、监听灭屏以及亮屏的广播,在灭屏的时候停止surfaceView的动画绘制;亮屏的时候恢复动画的绘制。
二、避免无端电量消耗
程序后台CPU不能连续工作5分钟且平均超高5%。