CodeBlanks Logo Icon CodeBlanks

workmanager nedir?

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

main.dart
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

main.dart
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

Soru
Workmanager().____(callbackDispatcher, isInDebugMode: true);
Cevap
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

İleri seviye bölümündeki tüm dersler