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

Zastąpienie przypisania wywołania zwrotnego do funkcji Firebase.Messaging.FirebaseMessaging.MessageReceivedumożliwia wykonywanie działań na podstawie otrzymanej wiadomości i uzyskiwanie jej danych:

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

Wysłane do aplikacji, gdy serwer FCM usunie 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.

Wyślij zdarzenie

Jest wywoływany, gdy wiadomość z wyższego poziomu została wysłana do 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ę łańcucha. MessageType będzie "send_error".