我正在尝试实施一套复杂的,基于时间的规则,用于在Android Lollipop
上安排作业。
我需要在数据库中运行System API
和bulk insert
,因此不应超过2-3秒。我将其称为 JOB1
。
规则是:
JOB1
(很简单,只需在Application onCreate上运行AsyncTask)。JOB1
。JOB1
[可选 - 即使在应用开始时间也没有] JOB1
,无论规则3如何。我不认为JobScheduler
的单个实例可以遵循所有这些规则,或者至少我还没有想到它。
奖金问题:
JobScheduler jobs = (JobScheduler) getSystemService(JOB_SCHEDULER_SERVICE);
JobInfo.Builder b = new JobInfo.Builder(SYNC_JOB_ID,
new ComponentName(this, SyncJobService.class));
b.setRequiredNetworkType(JobInfo.NETWORK_TYPE_NONE);
b.setPeriodic(getPeriod(6)) //6 hours
.setPersisted(true)
jobs.schedule(b.build());
在Application
启动时拨打此电话会覆盖之前的通话,或者我会每隔6小时运行JobScheduler
个不同的实例吗?