Android作业调度程序:每当数据网络在那里执行作业



我正在使用作业调度程序服务计划作业。我的工作开始的条件是任何network(setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY))的可用性。第一次,我正在安排用户输入中的作业(例如:单击按钮),因此,当用户单击按钮时,一旦可以使用网络,就会启动我的作业。

我的问题是,我的工作应该在随后的时间内没有用户输入开始。这可能吗?如果是,请建议。

(我不想听网络更改侦听器。由于它从Android n开始有一定的限制)

是的,jobInfo.builder这是可能的)

可以与https://developer.android.com/reference/android/App/job/jobinfo.builder.html#setrequirednetworktype(int)

组合使用。

是的,您可以在构建器中设置

setbackoffcriteria

每当计划的作业停止时,因为约束不满足,它将继续尝试。

    builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
    builder.setPeriodic(TimeUnit.DAYS.toMillis(1));
    builder.setBackoffCriteria(1000, JobInfo.BACKOFF_POLICY_EXPONENTIAL);

最新更新