我正在尝试按照这个来使用 FirebaseJobDispatcher
但我的问题是,如何为调度程序对象设置时间间隔,如 GCMNetworkManager (setPeriod)。或者请解释 FirebaseJobDispatcher 的工作原理。
我正在尝试按照这个来使用 FirebaseJobDispatcher
但我的问题是,如何为调度程序对象设置时间间隔,如 GCMNetworkManager (setPeriod)。或者请解释 FirebaseJobDispatcher 的工作原理。
一天前才开始使用 Dispatcher,所以我可能错了。我认为对于您想要做的事情,您必须将您的工作设置为经常性并选择合适的触发器。
final Job.Builder builder = dispatcher.newJobBuilder()
.setTag("myJob")
.setService(myJobService.class)
.setRecurring(true)
.setTrigger(Trigger.executionWindow(59, 61));
会给你一份大约每分钟重复一次的工作。
如何开始工作并一般设置 Dispatcher 我建议您查看 FirebaseJobDispatcher git 存储库(您已经链接)中可用的 testapp。特别是JobFormActivity和DemoJobService类。
这将在大约 10 分钟内触发。注意- 在 Marshmallow 之后的打盹模式下,执行时间可能会有所不同,这取决于可用的窗口。
Job myJob = mDispatcher.newJobBuilder()
.setService(MyJobService.class)
.setTag(JOB_TAG)
.setRecurring(true)
.setTrigger(Trigger.executionWindow(600, 600))
.setLifetime(Lifetime.FOREVER)
.setReplaceCurrent(false)
.setRetryStrategy(RetryStrategy.DEFAULT_EXPONENTIAL)
.build();
mDispatcher.schedule(myJob);