Odbieranie wiadomości w aplikacji klienckiej Unity

Odbieranie i obsługa wiadomości

Aby otrzymywać wiadomości, aplikacja musi przypisać wywołanie zwrotne do metody obsługi zdarzenia Firebase.Messaging.FirebaseMessaging.MessageReceived.

MessageReceived zdarzenie

Za pomocą zastąpienia przypisania wywołania zwrotnego do funkcji Firebase.Messaging.FirebaseMessaging.MessageReceivedmożesz wykonywać działania na podstawie otrzymanej wiadomości i pozyskiwać dane z tej wiadomości:

public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) {
  UnityEngine.Debug.Log("From: " + e.Message.From);
  UnityEngine.Debug.Log("Message ID: " + e.Message.MessageId);
}

Wiadomości mogą reprezentować różne rodzaje danych wejściowych. Najczęściej wiadomości są wysyłane do aplikacji po zainicjowaniu przez dewelopera. Komunikaty są też wysyłane do Twojej aplikacji, aby reprezentować zdarzenia wysłania wiadomości, błędy wysyłania wiadomości i zdarzenia usuwania wiadomości. Te specjalne zdarzenia można odróżnić, sprawdzając pole MessageType.

Wiadomości usunięte

Wysyłane do aplikacji, gdy serwer FCM usuwa oczekujące wiadomości. MessageType będzie "deleted_messages". Wiadomości mogą zostać usunięte, jeśli:

  1. Na serwerze FCM jest za dużo wiadomości.

    Może się tak zdarzyć, gdy serwery aplikacji wysyłają dużą liczbę nieskładanych wiadomości do serwerów FCM, gdy urządzenie jest offline.

  2. Urządzenie nie było połączone przez długi czas, a serwer aplikacji wysłał niedawno (w ciągu ostatnich 4 tygodni) wiadomość do aplikacji na tym urządzeniu.

    Po otrzymaniu tego wywołania zalecamy pełną synchronizację aplikacji z serwerem aplikacji.

Wysyłanie zdarzenia

Jest wywoływany, gdy wiadomość z wyższego poziomu została wysłana na adres FCM. MessageType będzie "send_event".

Błąd wysyłania

Wywoływany, gdy wystąpił błąd podczas wysyłania wiadomości w górę. MessageType będzie "send_error".