@Override public void createPeriodic() { for (int i = 0; i < 10; i++) { JobRequest.Builder builder = new JobRequest.Builder("tag") .setPeriodic(TimeUnit.MINUTES.toMillis(1)) .setRequiresCharging(random()) .setRequiresDeviceIdle(random()) .setRequiredNetworkType(random() ? JobRequest.NetworkType.ANY : JobRequest.NetworkType.CONNECTED) .setRequirementsEnforced(random()); if (random()) { PersistableBundleCompat extras = new PersistableBundleCompat(); extras.putString("key", "Hello world"); builder.setExtras(extras); } builder.build().schedule(); } } }
int jobId = DailyJob.schedule(new JobRequest.Builder("any").setRequiresCharging(true).setRequirementsEnforced(true), time, time); assertThat(manager().getAllJobRequests()).hasSize(1); jobId = DailyJob.schedule(new JobRequest.Builder("any").setRequiresCharging(false).setRequirementsEnforced(true), time, time); assertThat(manager().getAllJobRequests()).hasSize(1);
static JobRequest adapt(UploadRequest request) { PersistableBundleCompat extras = new PersistableBundleCompat(); request.populateParamsFromFields(new AndroidJobRequestParams(extras)); UploadPolicy policy = request.getUploadPolicy(); JobRequest.Builder builder = new JobRequest.Builder(JOB_TAG) .setBackoffCriteria(policy.getBackoffMillis(), adaptPolicy(policy.getBackoffPolicy())) .setExtras(extras) .setExecutionWindow(request.getTimeWindow().getMinLatencyOffsetMillis(), request.getTimeWindow().getMaxExecutionDelayMillis()) .setRequiredNetworkType(adaptNetworkType(policy.getNetworkType())) .setRequiresCharging(policy.isRequiresCharging()) .setRequiresDeviceIdle(policy.isRequiresIdle()) .setRequirementsEnforced(true); return builder.build(); }
@Override public void createPeriodic() { for (int i = 0; i < 10; i++) { JobRequest.Builder builder = new JobRequest.Builder("tag") .setRequiresCharging(random()) .setRequiresDeviceIdle(random()) .setRequiresBatteryNotLow(random()) .setRequiresStorageNotLow(random()) .setRequiredNetworkType(random() ? JobRequest.NetworkType.ANY : JobRequest.NetworkType.CONNECTED) .setRequirementsEnforced(random()); if (random()) { PersistableBundleCompat extras = new PersistableBundleCompat(); extras.putString("key", "Hello world"); builder.setExtras(extras); } if (random()) { builder.setPeriodic(JobRequest.MIN_INTERVAL); } else { builder.setPeriodic(JobRequest.MIN_INTERVAL, JobRequest.MIN_FLEX); } builder.build().schedule(); } } } }
@Override public void createPeriodic() { for (int i = 0; i < 10; i++) { JobRequest.Builder builder = new JobRequest.Builder("tag") .setRequiresCharging(random()) .setRequiresDeviceIdle(random()) .setRequiredNetworkType(random() ? JobRequest.NetworkType.ANY : JobRequest.NetworkType.CONNECTED) .setRequirementsEnforced(random()); if (random()) { PersistableBundleCompat extras = new PersistableBundleCompat(); extras.putString("key", "Hello world"); builder.setExtras(extras); } if (random()) { builder.setPeriodic(JobRequest.MIN_INTERVAL); } else { builder.setPeriodic(JobRequest.MIN_INTERVAL, JobRequest.MIN_FLEX); } builder.build().schedule(); } } }