【发布时间】:2021-05-07 11:27:57
【问题描述】:
在我的 android 应用程序中,我有一个要求,我需要每隔 5 天执行一次任务。任务是调用 API 并从服务器获取数据,即使应用程序没有运行/终止。
我已经检查了执行此操作的潜在选项,如下所示:
-
Alarm manager + Broadcast receiver + Intentservice- 在这种方法中,问题在于 Android 框架对 intentService 施加的限制。此外,如果设备重新启动,注册的警报将被删除。 -
WorkManager- 对于我的任务来说,这似乎是一种更好的方法,可以保证在最新的 android 版本上执行,但仍然不清楚是使用PeriodicWorkRequest还是OneTimeWorkRequest并继续重新安排它。
请注意,在准确的时钟时间执行此任务并不重要,但它应该在每 5 天的间隔后工作。
【问题讨论】:
标签: android alarmmanager android-workmanager