Odbieranie wiadomości w aplikacjach Unity

Wybierz platformę: iOS+ Android Web Flutter Unity C++


Aby otrzymywać wiadomości, aplikacja musi przypisać wywołanie zwrotne do modułu obsługi zdarzeń Firebase.Messaging.FirebaseMessaging.MessageReceived.

MessageReceived zdarzenie

Zastępując przypisanie wywołania zwrotnego do Firebase.Messaging.FirebaseMessaging.MessageReceived, możesz wykonywać działania na podstawie otrzymanej wiadomości i pobierać dane 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 przychodzących. Najczęściej wiadomości są wysyłane do aplikacji po zainicjowaniu przez dewelopera. Wiadomości są też wysyłane do aplikacji, aby reprezentować zdarzenia wysłania wiadomości, zdarzenia błędu wysyłania wiadomości i zdarzenia usunięcia wiadomości. Te zdarzenia specjalne można rozróżnić, sprawdzając pole Message::message_type.

Wiadomości zostały usunięte

Wysyłany do aplikacji, gdy serwer FCM usuwa oczekujące wiadomości. Message::message_type będzie kosztować "deleted_messages". Wiadomości mogą zostać usunięte z powodu:

  1. Na serwerze FCM jest przechowywanych zbyt wiele wiadomości.

    Może się tak zdarzyć, gdy serwery aplikacji wysyłają wiele wiadomości, których nie można zwinąć, do serwerów FCM, gdy urządzenie jest offline.

  2. Urządzenie nie łączyło się od dłuższego czasu, a serwer aplikacji niedawno (w ciągu ostatnich 4 tygodni) wysłał wiadomość do aplikacji na tym urządzeniu.

    Zalecamy, aby po otrzymaniu tego wywołania aplikacja przeprowadziła pełną synchronizację z serwerem aplikacji.

Wyślij zdarzenie

Wywoływane, gdy wiadomość upstream zostanie wysłana do FCM. MessageType będzie kosztować "send_event".

Błąd wysyłania

Wywoływana, gdy wystąpi błąd podczas wysyłania wiadomości upstream. MessageType będzie kosztować "send_error".