首页 > 解决方案 > 如何实现 PeriodicWorkRequest 链?

问题描述

我研究 Android WorkManager,并且喜欢一个问题。

我有 2 个作品,第一个从服务器和第二个预加载资源中获取一些数据(取决于第一个工作的结果)。我需要每小时做一次这个链条。

我需要类似的东西:

workManager.beginWith(work1).then(work2)

但在 WorkManger API 中,我发现仅适用于 OneTimeWorkRequest 的链。

标签: androidandroid-jetpackandroid-workmanager

解决方案


你不能链接PeriodicWorkRequests。对于您的用例,您可能会考虑使用OneTimeWorkRequest带有 a 的a ,它在初始延迟Worker的末尾将自身的副本排入队列(以模拟周期性)。doWork()

这样你仍然可以进行链接。我会一致地标记所有工作请求,以便您可以getWorkInfosByTagLiveData()正确。


推荐阅读