Uygulamanฤฑn sosyal medya haberlerini, hava raporlarฤฑnฤฑ, social feedbackleri verebilmesi iรงin, up to date kalmasฤฑ gereklidir. Ancak รงok sฤฑk sync olmak da performans iรงin en kรถtรผ fikirlerden biridir. Peki o zaman nasฤฑl handle edilmeli?
Oversync bataryayฤฑ รถldรผrรผr. Batarya sadece รงipi baลlatmak iรงin deฤil sฤฑnrasฤฑnda 2060 sn ek olarak awake tutmak iรงin de tรผketilir.
รok fazla sync olmak kรถtรผ diyoruz ancak ลรถyle de bir gerรงek variyi kullanฤฑcฤฑ deneyimini sunabilmek iรงin ki en uygulama gรผncel datayฤฑ gรถsterebilmeli. Bu sebeple sync olmayฤฑ tamamen kesemeyiz. Yapmak zorunda da deฤiliz. Ancak daha az request yapฤฑp kullanฤฑcฤฑya benzer bir deneyim sunmak da mรผmkรผn. Burada รถnemli olan da ลu an yapฤฑlmasฤฑ gerekenle bekleyebilir olanฤฑ ayฤฑrmaktan geรงmektedir.
Sรผrekli server’a gidip yeni data var mฤฑ diye sorgulamaktansa, baลka servisler kullanฤฑlabilir. Mesela Google Cloud Messaging gibi. Yeni content geldiฤinde server’a sinyal gรถnderir. Bรถylece hem batarya tรผketimini hem de server responselarฤฑnฤฑn sayฤฑsฤฑnฤฑ dรผลรผrรผr.
Sรผrekli sync olunmasฤฑ gereken durumlar iรงin ise kendimiz bir logic kurabiliriz. Mesela requesti yaptฤฑk, yeni data yoktu. Bir sonraki sorgu zamanฤฑnฤฑ X2 arttฤฑrarak ilerleyebiliriz.
Google Play Services API network oriented tasklarฤฑn dรผzenlenmesini saฤlar. Batching’i de kendi handle eder. Network kullanฤฑmฤฑyla ilgili detaylฤฑ bilgi almak istenirse de Network Traffic Tool kullanฤฑlabilir.
Referans: