OnetimeRequest不适用于initialDelay

时间:2019-04-09 15:48:45

标签: android android-jetpack android-workmanager

androidx 2.0.0;一加3T; H2os;

当我将enqueueUniqueWork()与不延迟的workRequest一起使用时,工作会正确开始;但是,当我将enqueueUniqueWork()与延迟1分钟的workRequest一起使用时,即使20分钟后该工作也无法正常工作。即使一天之后!

我尝试了sample code,在那个项目中,我在第一个清除请求上设置了initialDelay,这有效。但是,当我在SelectImageActivity中加入workRequest时,再次失败。我的意思是fail是请求有时有效,但有时却无效。我不明白这一点。

enqueue workRequest

OneTimeWorkRequest oneTimeWorkRequest = new OneTimeWorkRequest.Builder(UpdateWorker.class)
                .setInitialDelay(1, TimeUnit.MINUTES)
                .build();
WorkManager.getInstance().enqueueUniqueWork("com.pkg.onetime_work", ExistingWorkPolicy.REPLACE, oneTimeWorkRequest);
Timber.d("Work scheduled in MainActivity.start");

Worker

public Result doWork() {
        Timber.d("UpdateWorker.doWork");
        return Result.SUCCESS;
     }

我想在一分钟后执行一项工作,但是workRequest即使一天后也没有运行。

0 个答案:

没有答案