由於您只想顯示Firebase服務的通知。看看你的清單文件:
<service android:name=".YourFirebaseMessagingService" android:enabled="true" android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
該服務具有與com.google.firebase.MESSAGING_EVENT
行動的意圖過濾器,那麼你只需要通過延長FirebaseMessagingService實現服務和覆蓋onMessageReceived
方法。
注意onMessageReceived
提供大多數消息類型,但下列情況除外:交付
通知消息當你的應用程序是在後臺。在這種情況下,通知將傳遞到設備的系統托盤。用戶點擊通知會默認打開應用程序啓動器。
帶有通知和數據有效負載的消息,包括背景和前景。在這種情況下,通知將傳遞到設備的系統托盤,並且數據有效負載將以您啓動程序活動的目的附加內容傳遞。在主線程上運行
服務,除非明確地告訴別人,否則。這意味着您可以顯示任何您想要的通知,或啓動新的活動。
下面是上面的例子:
public class YourFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if (remoteMessage.getNotification().getBody() != null) {
Log.e("FIREBASE", "Message Notification Body: " + remoteMessage.getNotification().getBody());
//DO WHATEVER YOU NEED HERE TO DISPLAY YOUR MESSAGE OR ACTIVITY
}
}
}
需要注意的是,如果你想喚醒你的後臺應用程序,你將需要執行一個POST到以下網址:
POST https://fcm.googleapis.com/fcm/send
以下標題:
Key :內容類型,值:應用/ JSON
重點:授權,值:鍵= <your-server-key>
有關更多信息,請查看本link這answer。
你使用的是https:// github。com/evollu/react-native-fcm – Dayan
是的,我正在使用react-native-fcm。 –