Mesajların güvenilir bir şekilde alınması, tüm Android mesajlaşma deneyimlerinin en önemli özelliğidir. Mesajlaşma özelliğini sistem sağlığı ve pil ömrünü göz önünde bulundurarak uygulamak da önemlidir. Bu belgede, Android uygulamanızın mesajları tutarlı, verimli ve güvenilir bir şekilde almasını sağlayacak temel stratejiler ve araçlar açıklanmaktadır.
İleti teslim mekanizmaları
Güvenilir mesajlaşma için en iyi yaklaşım, uygulamanızın özel gereksinimlerine bağlıdır. Aşağıdaki gibi faktörleri göz önünde bulundurun:
- Mevcut anlık ihtiyaçlar
- Mesaj sıklığı
- Pil kısıtlamaları
Ön planda gerçek zamanlı mesajlaşma
Uygulamanız ön plandayken kullanıcı genellikle makul düzeyde yüksek miktarda bilgi bekler ve aşağıdakiler gibi bilgileri öğrenmek ister:
- Mesaj gönderilen kişi cihazında mevcut mu?
- Yazıyorlar mı?
- Mesajı okudular mı?
Bu tür gerçek zamanlı veri alışverişini desteklemenin tipik yolu, WebSockets gibi bir istemci-sunucu protokolü kullanmaktır. WebSocket'ler, uygulamanız ile sunucu arasında kalıcı ve tam çift yönlü iletişim sağlar. OKHTTP kitaplığı, Android istemcinizde kullanabileceğiniz bir WebSocket protokolü uygulaması içerir.
Firebase Realtime Database, bu tür iletişimleri sizin adınıza gerçekleştirebilecek önceden oluşturulmuş bir arka uç ve istemci ön ucu sağlar. İstemcisi ve sunucusu arasında gerçek zamanlı iletişim için dahili olarak WebSocket'leri kullanır.
Arka planda gerçek zamanlı mesajlaşma
Uygulamanız artık ön planda olmadığında sistem sağlığını ve pil ömrünü olumsuz etkileyecek işlemlerden kaçınmak çok önemlidir. Mesaj bildirimlerinin güvenilir bir şekilde iletilmesi hâlâ önemli olduğundan Firebase Cloud Messaging (FCM) kullanmanızı öneririz.
FCM, Android (ve diğer) cihazlara bildirimleri ve veri mesajlarını verimli bir şekilde gönderen, platformlar arası bir mesajlaşma çözümüdür. Google hizmetleri bulunan cihazlar için Android Taşıma Katmanı'nı (ATL) kullanır. Böylece uygulamanız artık çalışmadığında değişikliklerden haberdar olabilir. Mesaj tesliminin zamanında yapılması cihazın durumuna, mesajın önceliğine ve uygulamanızın uyku modu veya uygulamayı beklemeye alma nedeniyle kısıtlamalara tabi olup olmadığına bağlıdır.
- FCM'yi Android projenize nasıl entegre edeceğinizi öğrenin.
- FCM (sunucu) API'sini ve özelliklerini keşfetme
İleti tesliminin güvenilirliğini artırma
Mesaj teslimatınızı daha da sağlamlaştırmak için aşağıdaki stratejileri göz önünde bulundurun:
- Cihazda ağ bağlantısı olduğunda ve (ideal olarak) cihaz bir şarj cihazına bağlıyken yeni mesajları kontrol etmek için
WorkManagerkullanarak uygulamanızı düzenli olarak uyandırın. - Firebase konsolu ve FCM Data API'deki Android SDK yayınlama metrikleri gibi araçlarla FCM yayınlama hakkında bilgi edinin.
- Mesaj teslim sorunlarını izlemek ve gidermek için günlük kaydı mekanizmalarını ve Firebase Crashlytics gibi araçları kullanın.