我正在使用Evernote 的 Android 作业库来安排作业在设备在线时运行,代码如下:
new JobRequest.Builder(DemoSyncJob.TAG)
.setExecutionWindow(1L, SECONDS.toMillis(10))
.setRequiredNetworkType(CONNECTED)
.setRequirementsEnforced(true)
.build()
.schedule();
正如我所观察到的,调度程序正在等待网络,并且 - 当设备联机时 - 运行作业,即使指定为执行窗口结束的时间(在我的情况下SECONDS.toMillis(10)
)已经过去。所以我的问题是 - 这个参数(endInMs
在setExecutionWindow
方法中)在被调用时是否完全被忽略setRequirementsEnforced(true)
?