ARAYÜZÜN ÖMRÜ
Jetpack Compose
Arayüzü tek yönlü veri akışıyla kurarız. ViewModel ekran durumunu üretir; Compose kullanıcı olaylarını iletir. Ayrıca Flow akışlarını yaşam döngüsüne uygun toplarız.
Yükleniyor, boş, hata ve bekleyen işlem durumlarını açıkça modelleriz. Bununla birlikte ekran dönüşü, tablet penceresi ve süreç yeniden oluşturma senaryolarını test ederiz.
ASENKRON İŞİN ÖMRÜ
Coroutines
Coroutines kapsamını işin sahibine bağlarız. Ardından görev iptalini, zaman aşımını ve hata yayılımını tanımlarız. Ağ veya disk işlemlerinin ana iş parçacığını bloke etmesini önleriz.
Ancak suspend tek başına arka planda çalışma garantisi değildir. Bu nedenle uygun dispatcher seçer, iptal sinyalini yutmayız. Önceki arama sonucunun yeni sorguyu ezmesini de engelleriz.
KALICI İŞİN ÖMRÜ
Room + WorkManager
Form ve kuyruk verisini kalıcı depoda tutarız. Buna karşılık küçük ekran durumlarında SavedStateHandle gibi araçları değerlendiririz. Ardından ertelenebilir işleri ağ ve pil koşullarıyla planlarız.
Kullanıcının başlattığı uzun aktarım veya sürekli cihaz bağlantısı farklı gereksinimler taşır. Bu nedenle güncel Android arka plan API’lerini, izinleri ve görünürlük yükümlülüklerini senaryoya göre seçeriz.