Unity uygulamalarında ileti alma

Platform seçin: iOS+ Android Web Flutter Unity C++


Uygulamanızın mesaj alabilmesi için Firebase.Messaging.FirebaseMessaging.MessageReceived etkinlik işleyicisine bir geri çağırma ataması gerekir.

MessageReceived Etkinlik

Firebase.Messaging.FirebaseMessaging.MessageReceived öğesine bir geri çağırma atayarak, alınan mesaja göre işlemler yapabilir ve mesaj verilerini alabilirsiniz:

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

Mesajlar, farklı türde gelen verileri temsil edebilir. En yaygın olarak, mesajlar geliştirici tarafından başlatıldıktan sonra uygulamaya gönderilir. Mesaj gönderildi etkinliklerini, mesaj gönderme hatası etkinliklerini ve mesaj silindi etkinliklerini temsil etmek için uygulamanıza mesajlar da gönderilir. Bu özel etkinlikler, Message::message_type alanı kontrol edilerek ayırt edilebilir.

Mesajlar Silindi

FCM sunucusu bekleyen mesajları sildiğinde uygulamanıza gönderilir. Message::message_type, "deleted_messages" olacak. Mesajlar şu nedenlerle silinebilir:

  1. FCM sunucusunda çok fazla mesaj depolanıyor.

    Bu durum, cihaz çevrimdışıyken bir uygulamanın sunucuları FCM sunucularına bir grup daraltılamayan mesaj gönderdiğinde ortaya çıkabilir.

  2. Cihaz uzun süredir bağlanmıyor ve uygulama sunucusu, son zamanlarda (son 4 hafta içinde) bu cihazdaki uygulamaya mesaj gönderdi.

    Uygulamanın bu çağrıyı aldıktan sonra uygulama sunucusuyla tam senkronizasyon yapması önerilir.

Etkinlik Gönder

Bir üst akış mesajı FCM adresine başarıyla gönderildiğinde çağrılır. MessageType, "send_event" olacak.

Gönderme Hatası

Yukarı akış mesajı gönderilirken hata oluştuğunda çağrılır. MessageType, "send_error" olacak.