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 geri arama atamasını geçersiz kılarak 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);
}

İletiler, farklı türlerdeki gelen verileri temsil edebilir. En yaygın olarak, geliştirici tarafından başlatıldıktan sonra uygulamaya mesaj gönderilir. Ayrıca, gönderilen ileti etkinliklerini, ileti gönderme hatası etkinliklerini ve silinen ileti etkinliklerini temsil etmek için uygulamanıza iletiler gönderilir. Bu özel etkinlikler, Message::message_type alanı kontrol edilerek ayırt edilebilir.

Mesajlar Silindi

FCM sunucusu bekleyen iletileri sildiğinde uygulamanıza gönderilir. Message::message_type, "deleted_messages" olacak. Mesajlar aşağıdakiler nedeniyle silinebilir:

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

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

  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 yukarı akış mesajı FCM adresine başarıyla gönderildiğinde çağrılır. MessageType, "send_event" olacak.

Gönderme Hatası

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