workmanager nedir?
- Flutter kursu
- İleri seviye
- Ders 41/69
- 4 dk
workmanager ile arka plan görevi zamanlamayı öğrenirsin.
workmanager nedir?
workmanager paketi, uygulama kapalıyken bile çalışan arka plan görevlerini zamanlamak için kullanılır. Workmanager().initialize ile başlatılır ve görevler kayıt edilir. Bu paket, Android'de WorkManager ve iOS'te BGTaskScheduler API'lerini sarar.
Workmanager().initialize(callbackDispatcher, isInDebugMode: true);Workmanager başlatma
Workmanager kullanmadan önce initialize metodu çağrılır. Bu metodun ilk parametresi arka plan callback'i olan callbackDispatcher'dır. Bu çağrı uygulamanın main fonksiyonunda yapılır ve yalnızca bir kez çalıştırılır.
void main() {
Workmanager().initialize(callbackDispatcher, isInDebugMode: true);
}Uygulama Workmanager başlat
Bir callbackDispatcher fonksiyonu tanımla (parametre olarak task alsın, true döndürsün). main içinde Workmanager().initialize çağır ve 'ok' yazdır.
Başlangıç kodu
class Workmanager {
void initialize(Function dispatcher, {bool isInDebugMode = false}) {}
}
// callbackDispatcher fonksiyonunu yaz
// task parametresi alsın, true döndürsün
void main() {
// Workmanager'ı başlat
// 'ok' yazdır
}Örnek çözüm
class Workmanager {
void initialize(Function dispatcher, {bool isInDebugMode = false}) {}
}
bool callbackDispatcher(String task) {
return true;
}
void main() {
Workmanager().initialize(callbackDispatcher, isInDebugMode: true);
print('ok');
}Beklenen çıktı
ok
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 workmanager paketi ne sağlar?
- Kullanıcı arayüzü çizmeyi
- Veritabanı sorgularını hızlandırmayı
- Ön planda animasyon çalıştırmayı
- Uygulama kapalıyken arka plan görevi zamanlamayı Doğru cevap
Açıklama: workmanager, uygulama kapalıyken bile çalışabilen arka plan görevlerini zamanlar; animasyon, UI çizimi veya veritabanı hızlandırma ile ilgisi yoktur.
2 Workmanager başlat
Workmanager().____(callbackDispatcher, isInDebugMode: true);
Workmanager().initialize(callbackDispatcher, isInDebugMode: true);
Açıklama: Workmanager'ı başlatmak için initialize metodu çağrılır; ilk parametre callbackDispatcher fonksiyonudur.
3 workmanager parçaları
| Kavram | Anlamı |
|---|---|
Workmanager |
Arka plan görev paketi |
initialize |
Başlatma metodu |
callbackDispatcher |
Arka plan callback |
background |
Arka plan |