我正在尝试按照this
使用FirebaseJobDispatcher但我的问题是,如何设置调度程序对象的时间间隔,如GCMNetworkManager(setPeriod)。 或者请解释FirebaseJobDispatcher的工作原理。
答案 0 :(得分:1)
前一天才开始使用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。
答案 1 :(得分:0)
这将大约在10分钟内触发。 注意 - 棉花糖后的打盹模式下执行时间可能会有所不同,这取决于可用的窗口。
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);