En son güncellendiği tarih: 30 May 2020
Android kullanıcıları için batarya ömrü önemli bir konuyu oluşturuyor. Özellikle uygulamanızın ertelenebilir arkaplan görevlerini nasıl zamanladığı, pil ömrünün yönetiminde önemli bir rol oynar. Daha fazla pil dostu uygulama oluşturmanıza yardımcı olmak için, WorkManager tüm ertelenebilir arkaplan işlemleri için birleşik bir çözüm olarak sunuldu.
1 Kasım 2020'den başlayarak, WorkManager etrafında Android'de ertelenebilir arkaplan görevleri birleştirilecek ve GCMNetworkManager kullanımdan kaldırılacak.
Peki Neden WorkManager?
WorkManager API, Firebase Job Dispatcher ve GCMNetworkManager çözümlerini içerir ve pil yönetimi için API 14 seviyesi ve üstü için tutarlı bir iş çizelgeleme hizmeti sunar. Örneğin, uygulamanızın sunucuya günlük dosyaları göndermesi gerekiyorsa, cihazın hem şarj olmasını hem de Wifi bağlantısı kurmasını beklemek daha verimli olacaktır. Bu durumda WorkManager senkronizasyonunun verilen kısıtlamalar (Wifi bağlantısı ve şarj edilmesi) sağlandığında yerine getirilmesini sağlayacaktır. Ayrıca FirebaseJobDispatcher ve GCMNetworkManager'ın aksine Google Play Servislerini gerektirmez.
WorkManager'in Diğer Önemli Özellikleri
Uygulama güncellemeleri ve cihaz yeniden başlatmaları arasında zamanlanmış çalışmaya devam etme
Bir defalık veya periyodik görevleri zamanlama
Birlikte görev zinciri oluşturma
Bu Geliştiriciler için Ne Anlama Geliyor?
WorkManager kütüphanesi olgunluğa ulaştığında , geliştirici öyküsünü basitleşecek ve WorkManager stabilitesine odaklanılması için alternatif çözümler (FirebaseJobDispatcher ve GCMNetworkManager) kullanımdan kaldırılacaktır.
Bunun için;
FirebaseJobDispatcher kütüphanesinin kullanımdan kaldırılacağı Nisan 2019'da duyurulmuştu. Kütüphane Nisan 2020 ile birlikte arşivlenecek.
GCMNetworkManager'ın da kullanımdan kaldırılcağı duyuruldu. Kasım 2020 itibariyle desteği kesilecek ve arşivlenecek.
Ayrıca uygulamanızın Hedef API (targetSdkVersion) seviyesini Android 10 ve üzerine taşıdığınızda (API 29 ve üzeri) artık FirebaseJobDispatcher ve GCMNetworkManager Android Marsmallow ve üzeri için çalışmayacak.
WorkManager'e Geçiş
Şimdiye kadar yapmadıysanız, uygulamanızı WorkManager'a geçirmenin tam zamanı!
WorkManager'in resmi belgelerini okuyarak buna başlayabilirsiniz.
Uygulamanızda FirebaseJobDispatcher kullanıyorsanız, geçiş için resmi belgeleri kullanabilirsiniz.
Uygulamanızda hala GCMNetworkManager kullanıyorsanız WorkManager'e geçiş için benzer bir çözüm bulunmakta.
Youtube kısa bir süre önce WorkManager'e geçiş yaptığını açıkladı ve bu durum crash sayılarında %8 oranında bir düşüş sağladı. Bu sebeple WorkManager'e hala bir geçiş yapmadıysanız, geçiş yapmakta fayda var.