@@ -43,6 +43,7 @@ import com.owncloud.android.operations.DownloadType
4343import kotlinx.coroutines.CoroutineScope
4444import kotlinx.coroutines.Dispatchers
4545import kotlinx.coroutines.launch
46+ import java.time.Duration
4647import java.util.Date
4748import java.util.UUID
4849import java.util.concurrent.TimeUnit
@@ -267,19 +268,22 @@ internal class BackgroundJobManagerImpl(
267268 return workInfo.map { it -> it.map { fromWorkInfo(it) ? : JobInfo () }.sortedBy { it.started }.reversed() }
268269 }
269270
271+ @Suppress(" MagicNumber" )
270272 override fun scheduleContentObserverJob () {
271273 val constrains = Constraints .Builder ()
272274 .addContentUriTrigger(MediaStore .Images .Media .INTERNAL_CONTENT_URI , true )
273275 .addContentUriTrigger(MediaStore .Images .Media .EXTERNAL_CONTENT_URI , true )
274276 .addContentUriTrigger(MediaStore .Video .Media .INTERNAL_CONTENT_URI , true )
275277 .addContentUriTrigger(MediaStore .Video .Media .EXTERNAL_CONTENT_URI , true )
278+ .setTriggerContentUpdateDelay(Duration .ofSeconds(5 ))
279+ .setTriggerContentUpdateDelay(Duration .ofSeconds(10 ))
276280 .build()
277281
278- val request = periodicRequestBuilder (ContentObserverWork ::class , JOB_CONTENT_OBSERVER )
282+ val request = oneTimeRequestBuilder (ContentObserverWork ::class , JOB_CONTENT_OBSERVER )
279283 .setConstraints(constrains)
280284 .build()
281285
282- workManager.enqueueUniquePeriodicWork (JOB_CONTENT_OBSERVER , ExistingPeriodicWorkPolicy . KEEP , request)
286+ workManager.enqueueUniqueWork (JOB_CONTENT_OBSERVER , ExistingWorkPolicy . REPLACE , request)
283287 }
284288
285289 override fun schedulePeriodicContactsBackup (user : User ) {
0 commit comments