requiresDeviceIdle
If true, the device must be idle (in Doze mode or a maintenance window on Android) before dispatching.
Platform support.
Android: enforced via
WorkManager'sConstraints.setRequiresDeviceIdle(true), which maps toJobScheduleridle scheduling (API 23+). The OS will only dispatch the task when the device enters Doze or a maintenance window.iOS:
BGProcessingTaskRequesthas no device-idle knob. The flag is accepted and logged once as advisory; the OS already prefers idle moments when it fires background tasks.macOS / JVM:
NSBackgroundActivitySchedulerand the coroutine scheduler have no idle primitive. The flag is accepted but not enforced.