WorkManager的OneTimeWorkRequest的重试策略/机制是什么

Cheok Yan Cheng

我有以下临时工。

// Create a Constraints that defines when the task should run
Constraints constraints = new Constraints.Builder()
        .setRequiredNetworkType(NetworkType.UNMETERED)
        .setRequiresBatteryNotLow(true)
        // Many other constraints are available, see the
        // Constraints.Builder reference
        .build();

OneTimeWorkRequest oneTimeWorkRequest =
        new OneTimeWorkRequest.Builder(SyncWorker.class)
                .setConstraints(constraints)
                .addTag(SyncWorker.TAG)
                .build();

根据https://developer.android.com/topic/libraries/architecture/workmanager

// (Returning RETRY tells WorkManager to try this task again
// later; FAILURE says not to try again.)

我想知道,如果SyncWorker继续返回RETRY,什么是重试策略WorkManager例如,最大重试次数是WorkManager多少?文档尚不清楚。

拉胡尔

默认值为BackoffPolicy.EXPONENTIAL我们仅在您要求我们RETRY退货WorkerResult.RETRYWorker现在您的约束尚未满足重试因此,例如,如果您需要一个NETWORK约束,而现在该设备失去了活动的Network连接,则Worker它将停止并自动重试(当满足约束时)。

有关更多信息,请参阅docs

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章