【Android】JobScheduler

JobScheduler 从 Android 5.0(API 21) 开始提供,可用于在充电状态、待机闲置、Wifi连接状态等特定环境下,指示系统调度执行某些高消耗任务,如上传下载文件、更新资料等,有助于优化系统性能,节省电池消耗。

特性

  1. 支持在一个任务上组合多个条件
  2. 内置条件:设备待机、设备充电和连接网络
  3. 支持持续的job,这意味着设备重启后,之前被中断的job可以继续执行
  4. 支持设置job的最后执行期限
  5. 根据你的配置,可以设置job在后台运行还是在主线程中运行

使用流程

  1. 派生 JobService 子类,定义需要执行的任务(UI线程)
  2. 从 Context 中获取 JobScheduler 实例(相当于管理器)
  3. 构建 JobInfo 实例,指定 JobService 任务实现类及其执行条件
  4. 通过 JobScheduler 实例加入到任务队列

参考:在Android 5.0中使用JobScheduler

Android 5.0 以下兼容方案

  • Firebase Cloud Messaging (FCM)
  • Trigger (API 14)

你可能感兴趣的:(【Android】JobScheduler)