In Erste Schritte mit WorkManager wurde erwähnt, dass WorkManager Hintergrundarbeiten asynchron in Ihrem Namen ausführt. Die einfache Implementierung erfüllt die Anforderungen der meisten Apps. Für erweiterte Anwendungsfälle wie das Anhalten von Aufgaben sollten Sie sich über Threading und Nebenläufigkeit in WorkManager informieren.
WorkManager bietet vier verschiedene Arten von Arbeitsgrundlagen:
Worker
ist die einfachste und auch in den vorherigen Abschnitten verwendete Implementierung. WorkManager führt sie automatisch in einem Hintergrundthread aus (kann überschrieben werden). Weitere Informationen zu Threading inWorker
-Instanzen finden Sie unter Threading in Worker.CoroutineWorker
ist die empfohlene Implementierung für Kotlin-Nutzer.CoroutineWorker
-Instanzen stellen eine Anhaltenfunktion für Hintergrundarbeiten bereit. Standardmäßig wird einDispatcher
-Standard ausgeführt, den Sie anpassen können. Weitere Informationen zu Threading inCoroutineWorker
-Instanzen finden Sie unter Threading in Coroutine Worker.RxWorker
ist die empfohlene Implementierung für RxJava-Nutzer. RxWorkers sollten verwendet werden, wenn ein Großteil Ihres vorhandenen asynchronen Codes in RxJava modelliert wird. Wie bei allen RxJava-Konzepten können Sie die Threading-Strategie Ihrer Wahl wählen. Weitere Informationen zum Threading inRxWorker
-Instanzen finden Sie unter Threading in RxWorker.ListenableWorker
ist die Basisklasse fürWorker
,CoroutineWorker
undRxWorker
. Es richtet sich an Java-Entwickler, die mit Callback-basierten asynchronen APIs wieFusedLocationProviderClient
interagieren müssen und nicht RxJava verwenden. Weitere Informationen zum Threading inListenableWorker
-Instanzen finden Sie unter Threading in ListenableWorker.