ตั้งค่าและจัดการลำดับความสำคัญของข้อความ

คุณมี 2 ตัวเลือกในการกำหนดลำดับความสำคัญของการนำส่งข้อความดาวน์สตรีมใน Android ได้แก่ สำคัญปกติและสำคัญสูง การส่งข้อความที่มีลําดับความสําคัญปกติและสูงทํางานดังนี้

  • ความสำคัญปกติ นี่คือลำดับความสำคัญเริ่มต้นสำหรับข้อความอินเทอร์เน็ต ระบบจะส่งข้อความที่มีลําดับความสําคัญปกติทันทีเมื่ออุปกรณ์ไม่ได้อยู่ในโหมดสลีป เมื่ออุปกรณ์อยู่ในโหมดสลีป การนำส่งอาจล่าช้าเพื่อประหยัดแบตเตอรี่จนกว่าอุปกรณ์จะออกจากโหมดสลีป สำหรับข้อความที่ไม่จําเป็นต้องส่งโดยเร็ว เช่น การแจ้งเตือนอีเมลใหม่ การรักษา UI ให้ซิงค์กัน หรือซิงค์ข้อมูลแอปในเบื้องหลัง ให้เลือกลําดับความสําคัญของการนำส่งแบบปกติ

    เมื่อได้รับข้อความที่มีลําดับความสําคัญเป็นปกติใน Android ที่ขอการซิงค์ข้อมูลเบื้องหลังสําหรับแอป คุณสามารถกําหนดเวลางานด้วย WorkManager เพื่อจัดการเมื่อเครือข่ายพร้อมใช้งาน

  • สำคัญมาก FCM จะพยายามส่งข้อความที่มีลำดับความสำคัญสูงทันที ซึ่งจะช่วยให้ FCM ปลุกอุปกรณ์ที่กำลังหลับได้เมื่อจำเป็น และดำเนินการประมวลผลแบบจำกัดบางอย่าง (รวมถึงการเข้าถึงเครือข่ายแบบจำกัดมาก) โดยทั่วไปแล้ว ข้อความที่มีลำดับความสำคัญสูงควรส่งผลให้ผู้ใช้โต้ตอบกับแอปหรือการแจ้งเตือนของแอป

การจัดการข้อความและการลดลำดับความสำคัญใน Android

ข้อความที่มีลำดับความสำคัญสูงใน Android มีไว้สำหรับเนื้อหาที่มีความละเอียดอ่อนตามเวลาและแสดงต่อผู้ใช้ และควรส่งผลให้มีการแจ้งเตือนที่แสดงต่อผู้ใช้ หาก FCM ตรวจพบรูปแบบที่ข้อความไม่ทำให้เกิดการแจ้งเตือนที่แสดงต่อผู้ใช้ ระบบอาจลดลำดับความสำคัญของข้อความเป็นสำคัญระดับปกติหรือมอบหมายให้ Google Play Services จัดการ

FCM ใช้ข้อมูลพฤติกรรมของข้อความ 7 วันในการกำหนดว่าจะลดลำดับความสำคัญหรือใช้พร็อกซีกับข้อความหรือไม่ โดยระบบจะกำหนดนี้แยกกันสำหรับอินสแตนซ์แต่ละรายการของแอปพลิเคชัน หากการแจ้งเตือนแสดงในลักษณะที่ผู้ใช้มองเห็นเมื่อตอบสนองต่อข้อความที่มีลำดับความสำคัญสูง ข้อความที่มีลำดับความสำคัญสูงในอนาคตจะไม่ได้รับผลกระทบ

การมอบสิทธิ์การแจ้งเตือนด้วยบริการ Google Play

ข้อความการแจ้งเตือนที่มีลำดับความสำคัญสูง (ไม่ใช่ข้อความข้อมูล) ที่ตรงตามเกณฑ์บางอย่างจะได้รับการจัดการผ่านพร็อกซีโดย Google Play Services แทนที่จะลดลำดับความสำคัญ ซึ่งหมายความว่าบริการ Google Play จะแสดงการแจ้งเตือนในนามของแอปโดยไม่ต้องเริ่มแอป ทั้งนี้เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานโดยรวมที่ดีขึ้นบนอุปกรณ์ Android

โปรดทราบว่าข้อความการแจ้งเตือนที่รับผ่านพร็อกซีจะทำให้เกิดการเปลี่ยนแปลงในวิธีรายงานข้อมูลวิเคราะห์ที่เกี่ยวข้องกับข้อความที่ได้รับ ดังนี้

  • แอปของคุณต้องใช้ FCM SDK เวอร์ชัน 24.0.0 ขึ้นไปจึงจะรายงานข้อมูลวิเคราะห์สำหรับการแจ้งเตือนผ่านพร็อกซีได้
  • คุณอาจเห็นว่าข้อความที่ได้รับล่าช้าหรือลดลงเมื่อเทียบกับจำนวนก่อนเปิดตัวการแจ้งเตือนผ่านพร็อกซี เนื่องจากระบบจะรายงานข้อมูลวิเคราะห์สําหรับการแจ้งเตือนผ่านพร็อกซีเมื่อแอปเริ่มทํางานเท่านั้น และอาจไม่รายงานเลยหากการแจ้งเตือนไม่ได้ทําให้แอปเปิดขึ้น

การใช้พร็อกซีสำหรับข้อความการแจ้งเตือนด้วยวิธีนี้เป็นลักษณะการทำงานเริ่มต้นสำหรับแอปที่ใช้ Android Q ขึ้นไปและบริการ Google Play เวอร์ชัน 19054000 ขึ้นไป ระบบจะใช้พร็อกซีกับข้อความที่ส่งผ่าน HTTP v1 API แต่จะไม่ใช้พร็อกซีกับข้อความที่ส่งผ่านคอนโซล Firebase หรือ API เดิม โปรดทราบว่าฟีเจอร์นี้อยู่ในเวอร์ชันเบต้าและอาจมีการเปลี่ยนแปลง

แม้ว่าเราจะขอแนะนําอย่างยิ่งให้เปิดใช้การมอบสิทธิ์ไว้เพื่อประโยชน์ของแบตเตอรี่และหน่วยความจําของอุปกรณ์ แต่คุณเลือกไม่ใช้ลักษณะการทํางานนี้ได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้

  • ในระดับแอป: เพิ่มคำสั่ง <meta-data android:name= "delivery_metrics_exported_to_big_query_enabled" android:value="false"/> ในไฟล์ Manifest ของแอป
  • ตามอินสแตนซ์แอป: สําหรับอินสแตนซ์แอป ให้ตั้งค่า fun setNotificationDelegationEnabled(disable: Boolean): Task<Void!> ในขั้นตอน UI สําหรับแอป โดยขึ้นอยู่กับ Use Case ที่เฉพาะเจาะจง
  • ตามข้อความ: ตั้งค่าคีย์ proxy เป็น DENY ในออบเจ็กต์ AndroidNotification สำหรับคำขอส่ง

การวัดการลดลำดับความสำคัญของข้อความใน Android

  • ข้อความส่วนบุคคล เมื่อนำส่ง คุณสามารถตรวจสอบได้ว่ามีการลดลำดับความสำคัญของข้อความแต่ละรายการหรือไม่โดยเปรียบเทียบลำดับความสำคัญของข้อความที่ส่งจาก getPriority() กับลำดับความสำคัญเดิมจาก getOriginalPriority()

  • ข้อความทั้งหมด FCM Aggregate Delivery Data API สามารถรายงานเปอร์เซ็นต์ของข้อความทั้งหมดที่ส่งไปยัง Android ที่ถูกลดลำดับความสำคัญ ระบบอาจละเว้นข้อความบางรายการจากรายงานข้อมูลรวม แต่โดยรวมแล้วรายงานควรให้มุมมองภาพรวมของอัตราการจัดลำดับความสำคัญของข้อความ ดูข้อมูลเพิ่มเติมและโค้ดตัวอย่างสําหรับการค้นหา API ได้จากบทความเกี่ยวกับข้อมูลการแสดงผลแบบรวม หรือจะดูจากเครื่องมือสํารวจ API ก็ได้

  • การแจ้งเตือนที่ผ่านพร็อกซี ระบบจะไม่นับการแจ้งเตือนพร็อกซีในเมตริกการแสดงโฆษณา FCM หรือ GA ปัจจุบัน คุณจึงอาจเห็นว่าเมตริกการแสดงการแจ้งเตือนลดลงสูงสุด 15% สําหรับการรายงานเกี่ยวกับข้อความที่ส่งผ่านพร็อกซี ให้ใช้ FCM Aggregate Delivery Data API ProxyNotificationInsightPercents จะรายงานเปอร์เซ็นต์ของการแจ้งเตือนที่ส่งผ่านพร็อกซีสำเร็จ รวมถึงรายละเอียดของข้อความที่ส่งผ่านพร็อกซีไม่สำเร็จ

การแก้ปัญหา

  • ตรวจสอบว่าอินสแตนซ์แอปเปิดใช้การแจ้งเตือน หากผู้ใช้ปิดใช้สิทธิ์การแจ้งเตือนสำหรับแอปของคุณ ระบบจะไม่โพสต์การแจ้งเตือนใดๆ ของคุณ ส่งผลให้ข้อความของคุณไม่ได้รับการจัดลําดับความสําคัญ คุณควรตรวจสอบว่าได้เปิดใช้การแจ้งเตือนก่อนส่งข้อความที่มีลำดับความสำคัญสูงไปยังอินสแตนซ์แอปพลิเคชัน

  • อย่าโทรหาบ้านก่อนโพสต์การแจ้งเตือน เนื่องจากผู้ใช้อุปกรณ์เคลื่อนที่ Android บางส่วนใช้เครือข่ายที่มีเวลาในการตอบสนองสูง โปรดหลีกเลี่ยงการเปิดการเชื่อมต่อกับเซิร์ฟเวอร์ก่อนแสดงการแจ้งเตือน การเรียกกลับไปยังเซิร์ฟเวอร์ก่อนสิ้นสุดเวลาประมวลผลที่อนุญาตอาจเป็นความเสี่ยงสำหรับผู้ใช้ในเครือข่ายที่มีเวลาในการตอบสนองสูง แต่ให้ใส่เนื้อหาการแจ้งเตือนในข้อความ FCM และแสดงทันที หากต้องการซิงค์เนื้อหาในแอปเพิ่มเติมใน Android คุณสามารถกำหนดเวลางานด้วย WorkManager เพื่อจัดการเนื้อหาดังกล่าวในเบื้องหลัง