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

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

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

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

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

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

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

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

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

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

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

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

ข้อความแจ้งเตือนในพร็อกซีในลักษณะนี้เป็นลักษณะการทำงานเริ่มต้นสำหรับแอปที่ใช้ Android Q+ และบริการ Google Play เวอร์ชัน 19054000 ขึ้นไป ข้อความที่ส่งผ่าน API ของ HTTP v1 จะมีพร็อกซี แต่ข้อความที่ส่งผ่านคอนโซล 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()

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

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

การแก้ปัญหา

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

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