Anda memiliki dua opsi untuk menetapkan prioritas pengiriman pesan downstream di Android: prioritas normal dan tinggi. Pengiriman pesan berprioritas normal dan tinggi berfungsi sebagai berikut:
Prioritas normal. Ini adalah prioritas default untuk pesan data. Pesan berprioritas normal segera dikirim saat perangkat tidak sedang dalam mode tidur. Saat perangkat sedang dalam mode Istirahat, pengiriman mungkin akan ditunda untuk menghemat baterai hingga perangkat keluar dari mode Istirahat. Untuk pesan yang kurang mendesak dari segi waktu, misalnya notifikasi email baru, menjaga agar UI selalu sinkron, atau menyinkronkan data aplikasi di latar belakang, pilihlah prioritas pengiriman normal.
Saat menerima pesan berprioritas normal di Android yang meminta sinkronisasi data latar belakang untuk aplikasi, Anda dapat menjadwalkan tugas dengan WorkManager untuk menanganinya saat jaringan tersedia.
Prioritas tinggi. FCM berupaya untuk segera mengirimkan pesan berprioritas tinggi, sehingga FCM bisa mengaktifkan perangkat yang sedang dalam mode tidur jika diperlukan, dan menjalankan beberapa pemrosesan terbatas (termasuk akses jaringan yang sangat terbatas). Pesan berprioritas tinggi umumnya menimbulkan interaksi pengguna dengan aplikasi Anda atau notifikasinya.
Menggunakan pesan berprioritas tinggi untuk Android
Pesan berprioritas tinggi di Android dimaksudkan untuk konten yang sensitif terhadap waktu dan terlihat oleh pengguna, serta akan menghasilkan notifikasi yang ditampilkan kepada pengguna. Jika FCM mendeteksi pola yang pesannya tidak menghasilkan notifikasi yang dilihat pengguna, pesan Anda mungkin diturunkan ke prioritas normal. FCM menggunakan perilaku pesan selama 7 hari saat menentukan penurunan prioritas pesan; hal itu membuat penentuan ini berlaku secara independen untuk setiap instance aplikasi Anda. Jika, sebagai respons atas pesan prioritas tinggi, notifikasi ditampilkan dengan cara agar terlihat oleh pengguna, maka pesan berprioritas tinggi Anda berikutnya tidak akan diturunkan prioritasnya. Hal ini berlaku baik jika notifikasi ditampilkan oleh FCM SDK melalui pesan notifikasi, atau notifikasi yang dihasilkan developer melalui pesan data.
Mengukur penurunan prioritas pesan di Android
Pesan Perorangan. Saat pengiriman, Anda dapat menentukan apakah pesan tertentu prioritasnya diturunkan atau tidak dengan membandingkan prioritas pengirimannya, dari getPriority(), dengan prioritas aslinya, dari getOriginalPriority()
Semua Pesan. FCM Aggregate Delivery Data API dapat melaporkan persentase dari semua pesan Anda ke Android yang diturunkan prioritasnya. Beberapa pesan mungkin dihilangkan dari laporan data gabungan, tetapi secara keseluruhan pesan tersebut harus memberikan tampilan global dari tingkat penurunan prioritas pesan. Lihat artikel kami tentang data pengiriman gabungan untuk mengetahui informasi lebih lanjut dan kode contoh untuk membuat kueri API; API ini juga dapat dilihat dari APIs Explorer.
Pemecahan masalah
Pastikan bahwa instance aplikasi Anda telah mengaktifkan notifikasinya. Jika pengguna telah menonaktifkan izin notifikasi untuk aplikasi Anda, tidak ada notifikasi yang akan diposting, sehingga pesan Anda akan diturunkan prioritasnya. Anda harus memverifikasi bahwa notifikasi telah diaktifkan sebelum mengirim pesan berprioritas tinggi ke instance aplikasi.
Jangan memanggil beranda sebelum memposting notifikasi. Karena sebagian kecil populasi seluler Android menggunakan jaringan latensi tinggi, jangan buka koneksi ke server Anda sebelum menampilkan notifikasi. Memanggil kembali ke server sebelum akhir waktu pemrosesan yang diizinkan bisa berisiko bagi pengguna yang berada di jaringan latensi tinggi. Sebagai gantinya, sertakan konten notifikasi dalam pesan FCM dan segera tampilkan. Jika harus melakukan sinkronisasi untuk konten tambahan dalam aplikasi di Android, Anda dapat menjadwalkan tugas dengan WorkManager untuk menanganinya di latar belakang.