我读到了Work Manager,它的文档说它在带有API23+的设备上使用JobScheduler,在带有API14-22的设备上使用BroadcastReceiver+AlarmManager的组合,而JobScheduler可以从21API获得。所以为什么它不使用来自21api的jobscheduler。

最佳答案

根据this WorkManager issue
我们只使用从api 23开始的jobscheduler,因为在api 21&22中jobscheduler中有错误。
由于jobscheduler是一个框架api,因此无法将修复程序向后移植到早期版本的android,从而使较旧版本(在本例中为api 21和22设备)的jobscheduler版本不适合构建。

10-08 06:15