Layanan Message Push Service mendukung saluran Firebase Cloud Messaging (FCM) untuk aplikasi Android pada perangkat di luar Tiongkok.
Topik ini menjelaskan cara mengintegrasikan saluran push FCM.
Prasyarat
Sebelum mengintegrasikan FCM, pastikan prasyarat berikut terpenuhi:
Anda harus melakukan integrasi menggunakan metode native AAR. FCM hanya mendukung metode ini dan tidak mendukung integrasi Portal & Bundle.
Versi Gradle harus 4.1 atau lebih baru.
Proyek Anda harus menggunakan AndroidX.
Versi
com.android.tools.build:gradleharus 3.2.1 atau lebih baru.compileSdkVersionharus 28 atau lebih baru.
Integrasikan SDK FCM
Ikuti langkah-langkah berikut:
Tambahkan aplikasi di Konsol Firebase.
Login ke Konsol Firebase dan daftarkan aplikasi Anda. Untuk informasi selengkapnya, lihat dokumentasi Firebase.
Tambahkan file konfigurasi Android Firebase ke aplikasi Anda.
Unduh file konfigurasi
google-services.json. Letakkan file tersebut di direktori modul app proyek Anda.Tambahkan plugin Google Services ke dependensi
buildScriptdalam filebuild.gradletingkat root proyek Anda.buildscript { repositories { // Pastikan baris berikut tersedia (jika belum, tambahkan): google() // Google's Maven repository } dependencies { // ... // Tambahkan baris berikut: classpath 'com.google.gms:google-services:4.3.4' // Google Services plugin } } allprojects { // ... repositories { // Pastikan baris berikut tersedia (jika belum, tambahkan): google() // Google's Maven repository // ... } }Terapkan plugin Google Services di file
build.gradlemodul aplikasi Anda.apply plugin: 'com.android.application' // Tambahkan baris berikut: apply plugin: 'com.google.gms.google-services' // Google Services plugin android { // ... }Tambahkan dependensi SDK FCM ke file
build.gradlemodul aplikasi Anda.dependencies { // Impor BoM untuk platform Firebase implementation platform('com.google.firebase:firebase-bom:26.1.1') // Deklarasikan dependensi untuk library Firebase Cloud Messaging dan Analytics // Saat menggunakan BoM, Anda tidak perlu menentukan versi pada dependensi library Firebase implementation 'com.google.firebase:firebase-messaging' implementation 'com.google.firebase:firebase-analytics' }
Integrasikan mPaaS
Ikuti langkah-langkah berikut:
Tambahkan dependensi FCM Adapter ke file
build.gradlemodul aplikasi Anda.dependencies { implementation 'com.mpaas.push:fcm-adapter:0.0.2' }Integrasikan Komponen MPS. Versi garis dasar mPaaS harus memenuhi persyaratan berikut:
Untuk
com.mpaas.push:fcm-adapter:0.0.2, versi garis dasar harus 10.1.68.34 atau lebih baru.Untuk
com.mpaas.push:fcm-adapter:0.0.1, versi garis dasar harus 10.1.68.19 atau lebih baru.
Terima pesan push. Karena perilaku SDK FCM, klien tidak selalu menerima pesan dari saluran FCM saat dikirim dari Konsol atau sisi server. Klien dapat menerimanya melalui saluran self-built. Aturan pengiriman pesan adalah sebagai berikut:
Ketika aplikasi berada di latar belakang atau proses aplikasi dihentikan, pesan dikirim melalui saluran FCM. Pesan tersebut ditampilkan di bilah notifikasi, mirip dengan pesan dari saluran vendor lainnya.
Ketika aplikasi berada di latar depan, FCM meneruskan pesan ke aplikasi, yang kemudian menerimanya melalui saluran self-built.
(Opsional) Daftarkan penerima pesan untuk menerima pesan kesalahan jika inisialisasi FCM gagal. Untuk informasi selengkapnya, lihat dokumentasi kode kesalahan. Contoh kodenya sebagai berikut:
<receiver android:name=".push.FcmErrorReceiver" android:exported="false"> <intent-filter> <action android:name="action.mpaas.push.error.fcm.init" /> </intent-filter> </receiver>package com.mpaas.demo.push; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast; public class FcmErrorReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if ("action.mpaas.push.error.fcm.init".equalsIgnoreCase(action)) { Toast.makeText(context, "fcm error " + intent.getIntExtra("error", 0), Toast.LENGTH_SHORT).show(); } } }