OneTimeWorkRequest loadChannelIcons = new OneTimeWorkRequest.Builder(LoadChannelIconWorker.class).build(); WorkManager.getInstance().enqueueUniqueWork("LoadChannelIcons", ExistingWorkPolicy.REPLACE, loadChannelIcons);
OneTimeWorkRequest loadChannelIcons = new OneTimeWorkRequest.Builder(LoadChannelIconWorker.class).build(); WorkManager.getInstance().enqueueUniqueWork("LoadChannelIcons", ExistingWorkPolicy.REPLACE, loadChannelIcons); OneTimeWorkRequest updateEpgWorker = new OneTimeWorkRequest.Builder(EpgDataUpdateWorker.class) .setInitialDelay(30, TimeUnit.SECONDS) .build();
public void chain() { OneTimeWorkRequest runWorkA = new OneTimeWorkRequest.Builder(WorkerA.class).build(); OneTimeWorkRequest runWorkB = new OneTimeWorkRequest.Builder(WorkerB.class).build(); OneTimeWorkRequest runWorkC = new OneTimeWorkRequest.Builder(WorkerC.class).build();
OneTimeWorkRequest runWorkA = new OneTimeWorkRequest.Builder(WorkerA.class) .build();
new OneTimeWorkRequest.Builder(BlurWorker.class); OneTimeWorkRequest save = new OneTimeWorkRequest.Builder(SaveImageToFileWorker.class) .setConstraints(constraints) .addTag(TAG_OUTPUT)
public void param() { // Create the Data object: final Data myData = new Data.Builder() // We need to pass three integers: X, Y, and Z .putInt(WorkerParameters.KEY_X_ARG, 42) // ... and build the actual Data object: .build(); // ...then create and enqueue a OneTimeWorkRequest that uses those arguments OneTimeWorkRequest mathWork = new OneTimeWorkRequest.Builder(WorkerParameters.class) .setInputData(myData) .build(); WorkManager.getInstance().enqueue(mathWork); //now set the observer to get the result. WorkManager.getInstance().getStatusByIdLiveData(mathWork.getId()) .observe(this, new Observer<WorkStatus>() { @Override public void onChanged(@Nullable WorkStatus status) { if (status != null && status.getState().isFinished()) { int myResult = status.getOutputData().getInt(WorkerParameters.KEY_RESULT, -1); tv_param.setText("Result is " + myResult); } } }); }
private WorkRequest buildWorkRequest(Constraints constraints) { OneTimeWorkRequest.Builder builder= new OneTimeWorkRequest.Builder(DownloadWorker.class) .setInputData(new Data.Builder() .putString(DownloadWorker.KEY_URL, "https://commonsware.com/Android/Android-1_0-CC.pdf") .putString(DownloadWorker.KEY_FILENAME, "oldbook.pdf") .build()) .addTag("download"); if (constraints!=null) { builder.setConstraints(constraints); } return builder.build(); } }
static void enqueue() { WorkManager.getInstance() .enqueue(new OneTimeWorkRequest.Builder(MysplashMuzeiWorker.class) .setConstraints(new Constraints.Builder() .setRequiredNetworkType(NetworkType.CONNECTED) .build()) .build()); }
@Override public void plantOneOff(JobRequest request) { if (request.isTransient()) { TransientBundleHolder.putBundle(request.getJobId(), request.getTransientExtras()); } OneTimeWorkRequest workRequest = new OneTimeWorkRequest.Builder(PlatformWorker.class) .setInitialDelay(request.getStartMs(), TimeUnit.MILLISECONDS) // don't use the average here, WorkManager will do the right thing .setConstraints(buildConstraints(request)) .addTag(createTag(request.getJobId())) .build(); // don't set the back-off criteria, android-job is handling this WorkManager workManager = getWorkManager(); if (workManager == null) { throw new JobProxyIllegalStateException("WorkManager is null"); } workManager.enqueue(workRequest); }