Đặt và quản lý mức độ ưu tiên của tin nhắn

Bạn có hai tùy chọn để chỉ định mức độ ưu tiên phân phối cho các tin nhắn xuống dòng trên Android: mức độ ưu tiên thông thường và mức độ ưu tiên cao. Việc phân phối các tin nhắn bình thường và có mức độ ưu tiên cao hoạt động như thế này:

  • Ưu tiên bình thường. Đây là mức độ ưu tiên mặc định cho các thông điệp dữ liệu . Các tin nhắn ưu tiên thông thường được gửi ngay lập tức khi thiết bị không ở chế độ ngủ. Khi thiết bị ở chế độ Ngủ gật, việc phân phối có thể bị trì hoãn để tiết kiệm pin cho đến khi thiết bị thoát khỏi chế độ ngủ gật. Đối với các tin nhắn ít nhạy cảm về thời gian, chẳng hạn như thông báo về email mới, giữ giao diện người dùng của bạn được đồng bộ hóa hoặc đồng bộ hóa dữ liệu ứng dụng trong nền, hãy chọn mức độ ưu tiên phân phối bình thường.

    Khi nhận được thông báo ưu tiên bình thường trên Android yêu cầu đồng bộ hóa dữ liệu nền cho ứng dụng của bạn, bạn có thể lên lịch tác vụ với WorkManager để xử lý khi mạng khả dụng.

  • Ưu tiên cao. FCM cố gắng gửi tin nhắn có mức độ ưu tiên cao ngay lập tức, cho phép FCM đánh thức thiết bị đang ngủ khi cần thiết và chạy một số xử lý hạn chế (bao gồm cả truy cập mạng rất hạn chế). Thông báo có mức độ ưu tiên cao thường dẫn đến tương tác của người dùng với ứng dụng của bạn hoặc các thông báo của ứng dụng.

Sử dụng tin nhắn ưu tiên cao cho Android

Tin nhắn có mức độ ưu tiên cao trên Android dành cho nội dung nhạy cảm về thời gian, người dùng có thể nhìn thấy và sẽ dẫn đến thông báo trực tiếp người dùng. Nếu FCM phát hiện ra một hình thức mà trong đó tin nhắn không dẫn đến thông báo trực diện người dùng, thì tin nhắn của bạn có thể bị tước quyền ưu tiên thành mức độ ưu tiên bình thường. FCM sử dụng 7 ngày đối với hành vi tin nhắn khi xác định xem có tước quyền sử dụng tin nhắn hay không; nó đưa ra quyết định này một cách độc lập cho mọi trường hợp ứng dụng của bạn. Nếu, để phản hồi các thông báo có mức độ ưu tiên cao, các thông báo được hiển thị theo cách mà người dùng có thể nhìn thấy, thì các thông báo có mức độ ưu tiên cao trong tương lai của bạn sẽ không bị tước bỏ. Điều này áp dụng cho dù thông báo được FCM SDK hiển thị qua tin nhắn thông báo hay thông báo do nhà phát triển tạo qua tin nhắn dữ liệu .

Đo lường mức độ thiếu hụt tin nhắn trên Android

  • Tin nhắn cá nhân. Khi gửi, bạn có thể xác định xem một thư riêng lẻ có bị tước quyền ưu tiên hay không bằng cách so sánh mức độ ưu tiên đã phân phối của nó, từ getPosystem () , với mức độ ưu tiên ban đầu của nó, từ getOriginalPosystem ()

  • Tất cả các tin nhắn. API dữ liệu phân phối tổng hợp FCM có thể báo cáo tỷ lệ phần trăm tất cả các tin nhắn của bạn tới Android đang bị tước quyền. Một số thông báo có thể bị bỏ qua khỏi các báo cáo dữ liệu tổng hợp, nhưng nhìn chung, chúng sẽ cung cấp một cái nhìn toàn cầu về tỷ lệ tước bỏ thông điệp. Xem bài viết của chúng tôi về dữ liệu phân phối tổng hợp để biết thêm thông tin và mã mẫu để truy vấn API; nó cũng có thể được khám phá từ trình khám phá API .

Xử lý sự cố

  • Đảm bảo rằng phiên bản ứng dụng của bạn đã bật thông báo. Nếu người dùng đã vô hiệu hóa quyền thông báo cho ứng dụng của bạn, sẽ không có thông báo nào của bạn được đăng, do đó, tin nhắn của bạn sẽ bị tước quyền truy cập. Bạn nên xác minh rằng thông báo đã được bật trước khi gửi các thông báo có mức độ ưu tiên cao đến một phiên bản ứng dụng.

  • Đừng gọi điện về nhà trước khi đăng thông báo. Vì một phần nhỏ dân số di động Android đang sử dụng mạng có độ trễ cao, nên tránh mở kết nối với máy chủ của bạn trước khi hiển thị thông báo. Gọi lại máy chủ trước khi kết thúc thời gian xử lý cho phép có thể gây rủi ro cho người dùng trên mạng có độ trễ cao. Thay vào đó, hãy đưa nội dung thông báo vào tin nhắn FCM và hiển thị nó ngay lập tức. Nếu bạn cần đồng bộ hóa để có thêm nội dung trong ứng dụng trên Android, bạn có thể lên lịch tác vụ với WorkManager để xử lý tác vụ đó trong nền.