Mühendislik
Digital Generation
1 dk okuma
Bir zamanlayıcı neden geri sayım yapmamalı
Android’de güvenilir bir zamanlayıcı yazmanın yolu saymaktan değil, zaman damgası tutmaktan geçiyor.
Zamanlayıcı yazmanın en yaygın hatası, geriye doğru saymaktır. Uygulama arka plana atıldığında, sistem süreci uyuttuğunda veya öldürdüğünde sayaç durur ve kullanıcı yanlış süre görür.
Doğru yaklaşım: bitiş anını sakla
Sayacın kendisini değil, seansın biteceği anı saklarsınız. Ekran her açıldığında kalan süre bu andan hesaplanır. Süreç öldürülse bile hesap doğrudur.
Sayaç bir durum değil, bir hesaplamadır.
Yeniden başlatma sorunu
Cihaz yeniden başladığında elapsedRealtime sıfırlanır. Bunu yakalamak için açılış sayacı birlikte saklanır; değişmişse kayıt geçersiz sayılır.