Menerima pesan dengan andal

Menerima pesan secara andal adalah fitur terpenting dari setiap pengalaman pesan Android. Penting juga untuk menerapkan pesan dengan memperhatikan kesehatan sistem dan masa pakai baterai. Dokumen ini memandu Anda melalui strategi dan alat utama untuk memastikan aplikasi Android Anda menerima pesan secara konsisten, efisien, dan andal.

Mekanisme pengiriman pesan

Pendekatan terbaik untuk pengiriman pesan yang andal bergantung pada persyaratan spesifik aplikasi Anda. Pertimbangkan faktor-faktor seperti:

  • Kebutuhan real-time saat ini
  • Frekuensi pesan
  • Batasan baterai

Pengiriman pesan real-time di latar depan

Saat aplikasi Anda berada di latar depan, pengguna biasanya mengharapkan informasi dalam volume yang cukup tinggi, dan ingin mengetahui hal-hal seperti:

  • Apakah orang yang dikirimi pesan ada di perangkatnya?
  • Apakah mereka sedang mengetik?
  • Apakah mereka sudah membaca pesan?

Cara umum untuk mendukung pertukaran data real-time semacam ini adalah dengan menggunakan protokol client-server, seperti WebSockets. WebSockets memungkinkan komunikasi full-duplex yang persisten antara aplikasi dan server Anda. Library OKHTTP menyertakan implementasi protokol WebSocket yang dapat Anda gunakan di klien Android Anda.

Firebase Realtime Database menyediakan backend bawaan dan frontend klien yang dapat menangani komunikasi semacam ini atas nama Anda. Aplikasi ini menggunakan WebSockets secara internal untuk komunikasi real-time antara klien dan servernya.

Pengiriman pesan real-time di latar belakang

Saat aplikasi Anda tidak lagi berada di latar depan, Anda harus menghindari tindakan yang berdampak buruk pada kondisi sistem dan masa pakai baterai. Karena masih penting untuk mengirimkan notifikasi pesan secara andal, sebaiknya gunakan Firebase Cloud Messaging (FCM).

FCM adalah solusi pengiriman pesan lintas platform yang secara efisien mengirimkan notifikasi dan pesan data ke perangkat Android (dan perangkat lainnya). Hal ini memanfaatkan Lapisan Transportasi (ATL) Android untuk perangkat yang memiliki layanan Google, sehingga aplikasi Anda dapat diberi tahu tentang perubahan saat tidak lagi berjalan. Ketepatan waktu pengiriman pesan bergantung pada status perangkat, prioritas pesan, dan apakah aplikasi Anda tunduk pada pembatasan karena mode istirahatkan atau siaga aplikasi.

Meningkatkan keandalan pengiriman pesan

Untuk membuat pengiriman pesan Anda lebih andal, pertimbangkan strategi berikut: