正如Google文档所提到的,JobScheduler不能在Doze模式下工作,除非它处于时间窗口的周期性唤醒时间。
参考https://developer.android.com/training/monitoring-device-state/doze-standby?hl=en
但有些人说即使在Doze模式下也能工作..。在以下链接中。如何在设备不打瞌睡(甚至没有维护窗口)的情况下使用JobScheduler来安排作业?
哪一个是真的?如果它能在打瞌睡模式下工作在作业计划程序中,那么它能在打瞌睡模式下使用网络(Wifi和移动网络)吗?
而作业调度器在打瞌睡模式下,会不会唤醒系统?或者只是应用程序?
发布于 2019-01-11 13:10:12
无论您是否打瞌睡模式,如果您添加了JobScheduler,则setRequiredNetworkType将与网络一起工作。虽然在打瞌睡模式下,它将在维护窗口中运行&操作系统将决定正确的时间。
除此之外,为了澄清setRequiresDeviceIdle()不是打瞌睡模式空闲状态,而是另一种屏幕关闭状态,但不一定与打瞌睡模式活动。
尽管有类似的命名,但此作业约束与系统的“设备空闲”或“打瞌睡”状态无关。此约束仅确定在设备直接使用时是否允许作业运行。
https://stackoverflow.com/questions/54144983
复制相似问题