Nhận và xử lý tin nhắn
Để nhận tin nhắn, ứng dụng của bạn phải chỉ định lệnh gọi lại cho trình xử lý sự kiện Firebase.Messaging.FirebaseMessaging.MessageReceived
.
Sự kiện MessageReceived
Bằng cách ghi đè việc chỉ định một cuộc gọi lại cho Firebase.Messaging.FirebaseMessaging.MessageReceived
, bạn có thể thực hiện các hành động dựa trên tin nhắn đã nhận và nhận dữ liệu tin nhắn:
public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) { UnityEngine.Debug.Log("From: " + e.Message.From); UnityEngine.Debug.Log("Message ID: " + e.Message.MessageId); }
Tin nhắn có thể đại diện cho các loại dữ liệu đến khác nhau. Thông thường nhất, tin nhắn sẽ được gửi đến ứng dụng sau khi được nhà phát triển bắt đầu. Tin nhắn cũng được gửi đến ứng dụng của bạn để thể hiện các sự kiện đã gửi tin nhắn, sự kiện lỗi gửi tin nhắn và sự kiện đã xóa tin nhắn. Những sự kiện đặc biệt này có thể được phân biệt bằng cách kiểm tra trường MessageType
.
Tin nhắn đã bị xóa
Được gửi tới ứng dụng của bạn khi máy chủ FCM xóa các tin nhắn đang chờ xử lý. MessageType
sẽ là "deleted_messages"
. Tin nhắn có thể bị xóa nếu:
Quá nhiều tin nhắn được lưu trữ trên máy chủ FCM.
Điều này có thể xảy ra khi máy chủ của ứng dụng gửi một loạt tin nhắn không thể thu gọn đến máy chủ FCM trong khi thiết bị ngoại tuyến.
Thiết bị đã lâu không kết nối và máy chủ ứng dụng gần đây (trong vòng 4 tuần qua) đã gửi tin nhắn đến ứng dụng trên thiết bị đó.
Chúng tôi khuyên ứng dụng nên đồng bộ hóa hoàn toàn với máy chủ ứng dụng sau khi nhận được cuộc gọi này.
Gửi sự kiện
Được gọi khi một tin nhắn ngược dòng đã được gửi thành công tới FCM. MessageType
sẽ là "send_event"
.
Gửi lỗi
Được gọi khi có lỗi khi gửi tin nhắn ngược dòng. MessageType
sẽ là "send_error"
.