Odbieranie i przetwarzanie 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.MessageReceived
moż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
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:
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.
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.
Zalecamy, aby po otrzymaniu tego wywołania aplikacja wykonała pełną synchronizację z serwerem aplikacji.
Wyślij zdarzenie
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ę łańcucha.
MessageType
będzie "send_error"
.