【问题标题】:Firebase Job Dispatcher Execution WindowFirebase 作业调度程序执行窗口
【发布时间】:2017-06-26 19:50:34
【问题描述】:

任务:我想在上午 9:00 到晚上 9:00 之间获取用户的位置。 所以,我想使用 Job Scheduler 但无法将其设置为上述时间段。

请帮助我了解 Firebase 作业调度程序。

请告诉我如何将调度程序设置为高于(上午 9:00 到晚上 9:00)时段。

尝试执行以下操作:

 firebaseJobDispatcher = new FirebaseJobDispatcher(new GooglePlayDriver(context));
            Job constraintReminderJob = firebaseJobDispatcher.newJobBuilder()
                .setService(DispatcherService.class)
                .setTag("")
                .setConstraints(Constraint.DEVICE_CHARGING)
                .setLifetime(Lifetime.FOREVER)
                .setRecurring(true)
                .setTrigger(Trigger.executionWindow(
                   ?,?
                ))
                .setReplaceCurrent(true)
                .build();

            firebaseJobDispatcher.schedule(constraintReminderJob);

【问题讨论】:

    标签: android android-location android-jobscheduler firebase-job-dispatcher


    【解决方案1】:

    好吧,我认为您不能为此使用普通的重复性工作。肯定不会使用 Firebase 调度程序,因为正如 this 好的回复中所述,

    windowStart 是作业的最早时间(以秒为单位) 被认为有资格运行。从计划作业的时间开始计算 (对于新作业)或上次运行(对于重复作业)

    所以我认为要遵循的主要路径是 AlarmManager 在指定时间(上午 9:00)安排 FireBase 作业,没有重复和一小时容差,类似于 executionWindow(0, 60*60)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-08
      • 1970-01-01
      • 2017-06-18
      • 2013-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多