Junior — Middle
Milyen eszközökkel szervezheted meg a háttérben futó feladatok ütemezését?
sobes.tech MI
Válasz az MI-től
Androidben az alábbi eszközöket használhatjuk háttérfeladatok ütemezésére:
-
WorkManager: Ajánlott API késleltetett és ismétlődő feladatokhoz, figyelembe veszi a rendszer korlátozásait, és akkor is működik, ha az eszköz újraindul.
-
AlarmManager: Lehetővé teszi feladatok indítását meghatározott időpontban, de energiatakarékosabb kezelést igényel.
-
JobScheduler: Lehetővé teszi feladatok ütemezését az eszköz állapotának (pl. töltés, hálózat) figyelembevételével, API 21-től elérhető.
Példa a WorkManager használatára egy periódikus feladathoz:
val workRequest = PeriodicWorkRequestBuilder<MyWorker>(1, TimeUnit.HOURS).build()
WorkManager.getInstance(context).enqueueUniquePeriodicWork(
"MyPeriodicWork",
ExistingPeriodicWorkPolicy.REPLACE,
workRequest
)
Ahol MyWorker egy Worker-ből származó osztály, amelyben a feladat logikája van implementálva.