我如何使WorkManager始终在后台运行,如果应用已关闭/已终止/已打开,则应继续运行。我在doWork
方法中编写了代码,该方法检查数据库中的更改并在数据库更改时发送通知。因此,它应该始终在bg中运行以检查更改。
那么,OneTimeRequest
或PeriodicWorkRequest
应该用于什么呢?另外,在我的Worker类中,我将Result设置为RETRY
,即return Result.RETRY;
,以希望使其始终运行。
PS-我不希望WorkManager在任何状态/条件下都空闲。正确的做法应该是什么?
答案 0 :(得分:0)
我如何使WorkManager始终在后台运行,如果应用已关闭/已终止/已打开,则应继续运行
你不知道。 WorkManager
的操作方式并非如此。当您的应用未运行时,它使用JobScheduler
处理工作,并且JobScheduler
作业不会连续运行。
唯一与您想要的相似的是使用前台服务。