我正在使用作业调度程序服务计划作业。我的工作开始的条件是任何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);