参考: Android WorkManager api 用于后台运行日常任务
它使用WorkManager.enqueueUniquePeriodicWork
来确保PeriodicWorkRequest不会被多次创建。
示例代码:
val work = PeriodicWorkRequestBuilder<SyncWork>(15,TimeUnit.MINUTES).build()
WorkManager.getInstance().enqueueUniquePeriodicWork("TaskTag",
ExistingPeriodicWorkPolicy.KEEP, work);
但是,我发现ExistingPeriodicWorkPolicy
它有两个选项可以使用。ExistingPeriodicWorkPolicy.KEEP
ExistingPeriodicWorkPolicy.REPLACE
我尝试实现它并运行代码,但它确实显示出任何差异,而且看起来它们的行为方式相同。
我的不确定性:
表现与有何ExistingPeriodicWorkPolicy.KEEP
不同?ExistingPeriodicWorkPolicy.REPLACE