后台任务及省电优化
文章目录 前言 一、低电耗(Doze)模式 功能限制 adb指令强制进入Doze模式 二、应用待机模式(App Standby) adb指令强制进入standby模式 三、Android不同版本对省电的优化 `Android 6.0`(API级别23) `Android 7.0`(API级别24) `Android 8.0`(API级别26) `Android 9`(API级别28) 四、针对省电优化的解决方案 附:参考 前言 当我们的App正在与用户频繁交互时,需要处理某个耗时任务,而任务的结果需要立即反馈。这时因为主线程用于处理UI和用户交互逻辑,如果有太多的耗时的逻辑在主线程中执行,就会阻塞主线程,引发ANR异常,导致APK卡顿甚至崩溃。因此需要一个后台线程来处理耗时任务。 当我们的App并未与用户频繁交互,但是,App本身需要周期性的从服务器同步数据或者获取数据(常见的心跳连接、收发消息长连接)。这时需要一个后台进程来处理,因为仅仅是后台线程,不能保证长久存活,也不能保证任务能执行完毕。 关于进程保活的文章有很多了,推荐几篇不错的文章: 腾讯——张兴华 原文链接找不到了,这是别人转发 关于 Android 进程保活,你所需要知道的一切 但是,官方说明自己看: Note: You should only use a foreground service for tasks