| Seleziona la piattaforma: | iOS+ Android Web Flutter Unity C++ |
Per ricevere messaggi, la tua app deve assegnare un callback al
Firebase.Messaging.FirebaseMessaging.MessageReceived
gestore di eventi.
Evento MessageReceived
Eseguendo l'override dell'assegnazione di un callback a Firebase.Messaging.FirebaseMessaging.MessageReceived
puoi eseguire azioni in base al messaggio ricevuto e recuperare i dati del messaggio
data:
public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) {
UnityEngine.Debug.Log("From: " + e.Message.From);
UnityEngine.Debug.Log("Message ID: " + e.Message.MessageId);
}
I messaggi possono rappresentare diversi tipi di dati in entrata. Nella maggior parte dei casi, i messaggi vengono inviati all'app dopo essere stati avviati dallo sviluppatore. I messaggi vengono inviati alla tua app anche per rappresentare eventi di invio di messaggi, eventi di errore di invio di messaggi ed eventi di eliminazione di messaggi. Questi eventi speciali possono essere differenziati controllando il campo Message::message_type.
Messaggi eliminati
Vengono inviati alla tua app quando il server FCM elimina i messaggi in attesa.
Message::message_type sarà "deleted_messages". I messaggi potrebbero essere eliminati per i seguenti motivi:
Troppi messaggi memorizzati sul FCM server.
Ciò può accadere quando i server di un'app inviano una serie di messaggi non comprimibili ai server FCM mentre il dispositivo è offline.
Il dispositivo non è connesso da molto tempo e il server dell'app ha inviato di recente (nelle ultime 4 settimane) un messaggio all'app su quel dispositivo.
Ti consigliamo di eseguire una sincronizzazione completa con il server dell'app dopo aver ricevuto questa chiamata.
Invia evento
Viene chiamato quando un messaggio upstream è stato inviato correttamente a FCM.
MessageType sarà "send_event".
Errore di invio
Viene chiamato quando si è verificato un errore durante l'invio di un messaggio upstream.
MessageType sarà "send_error".