根据我的理解,下面的代码应该设置一个仅在有网络连接时运行的定期作业。这意味着尽管是周期性的,但除非满足所需条件,否则它不会运行。
但这不起作用。无论是否有网络,它总是在这段时间后运行。我做错了吗?
JobScheduler mJobScheduler = (JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE);
JobInfo.Builder builder = null;
builder = new JobInfo.Builder(1, new ComponentName(getPackageName(),
MyJobService.class.getName()))
.setPersisted(true)
.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
.setPeriodic(10 * 1000);
答案 0 :(得分:0)
Android版本上的setPeriodic()
存在一些问题< N(虽然我没有官方链接问题)但在旧版本上使用setMinimumLatency()
对我来说是个窍门。
您可以查看SO以获取更多详细信息。