0

我环顾四周,一致认为它已固定在 Alpha-07 上,但我在 08 年在 7.0 和 8.0 设备上看到它。我有网络限制,因此在长时间没有网络的情况下,我有可能安排超过 100 个工作项。我对批处理如何发挥作用有点困惑。我们是说 WorkManager 在崩溃之前只能安排 100 个项目,还是仍然存在批处理错误?谢谢

添加到 WM 的代码:

Constraints constraints = new Constraints.Builder()
        .setRequiredNetworkType(NetworkType.CONNECTED)
        .build();
Data inputData = new Data.Builder()
        .putString(UploadWorker.DATA, data)
        .build();
OneTimeWorkRequest uploadWork = new OneTimeWorkRequest.Builder(UploadWorker.class)
        .setConstraints(constraints)
        .setInputData(inputData)
        .setBackoffCriteria(BackoffPolicy.EXPONENTIAL, BACK_OFF_TIME_DELAY_SECONDS, TimeUnit.SECONDS)
        .addTag(TAG)
        .build();
WorkManager workManager = WorkManager.getInstance();
workManager.enqueue(uploadWork);
4

1 回答 1

1

有一个新版本的 WorkManager 库(版本 alpha09)应该可以一劳永逸地解决这个问题。如发行说明中所述:

添加了“100 个作业”错误所需的另一个修复程序。b/115560696

了解 WorkManager 库如何发展的一个不错的选择是密切关注它的问题跟踪器

于 2018-09-20T22:01:35.060 回答