คู่มือฉบับสมบูรณ์เกี่ยวกับ Notification Badge: ฟีเจอร์สำคัญเพื่อเพิ่ม Engagement ของแอป

ภาพรวมของค่า Badge

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

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


ภาพรวมการรองรับของแต่ละ Channel

เนื่องจากข้อจำกัดของระบบในแต่ละผู้ผลิตมือถือ ช่องทาง push notification บางรายเท่านั้นที่รองรับการแสดง Badge สถานะการรองรับมีดังนี้:

Vendor รองรับ Badge / ตัวเลข Badge หมายเหตุการใช้งาน ข้อจำกัดของ Badge
Google FCM รองรับ Badge แสดงเป็นจุด (dot) ตามค่าเริ่มต้น ตามพฤติกรรมของระบบ ไม่มีการกำหนดขีดจำกัดสูงสุดที่ชัดเจน
Huawei / Honor รองรับ Badge แบบตัวเลข ตัวเลข Badge เพิ่มขึ้นเมื่อมีการแจ้งเตือนใหม่ โดยปกติจำกัดที่ 99
Xiaomi รองรับ Badge แบบตัวเลข ทำงานตามตรรกะของระบบ แต่ละการแจ้งเตือนใหม่จะเพิ่มขึ้น 1 ขีดจำกัดขึ้นกับระบบ ไม่มีระบุไว้อย่างชัดเจน
OPPO ไม่รองรับ Badge แบบตัวเลข รองรับเฉพาะจุดสีแดง (red dot) โดยค่าเริ่มต้น Badge ตัวเลขต้องขออนุมัติพิเศษจาก OPPO และมักจะให้เฉพาะแอปอย่าง WeChat หรือ QQ ไม่ระบุ; โดยทั่วไป Badge ตัวเลขจะไม่สามารถใช้งานได้
VIVO รอการยืนยันจากผู้ผลิต; ขณะนี้ยังไม่รองรับในการทดสอบ ข้อมูลออนไลน์แตกต่างกันไปตามเวอร์ชัน OS และช่องทาง push โดยปกติจำกัดที่ 99
Meizu ไม่รองรับ Badge แบบตัวเลข รองรับเฉพาะจุดสีแดง (red dot)
iOS รองรับ Badge แบบตัวเลข สามารถจัดการตัวเลข Badge ผ่าน push payload หรือ SDK API สูงมาก; ไม่มีขีดจำกัดที่ระบุไว้

ตัวอย่างการใช้งานที่พบบ่อย

  • แอปโซเชียล: ซิงโครไนซ์จำนวนข้อความที่ยังไม่ได้อ่านแบบเรียลไทม์
  • แอปอีคอมเมิร์ซ: แจ้งเตือนคำสั่งซื้อหรือรายการที่ต้องดำเนินการ
  • แอปข่าว: แสดงจำนวนบทความที่ยังไม่ได้อ่าน

iOS Badge: การจัดการ Badge อย่างแม่นยำ

สถาปัตยกรรมทางเทคนิค

ภาพประกอบสถาปัตยกรรม Badge iOS


การตั้งค่า Badge ฝั่ง Client

ตั้งค่า Badge (พร้อม Callback)

รองรับตั้งแต่เวอร์ชัน: v5.2.0

ตัวอย่างโค้ดการตั้งค่า Badge


ล้างค่า Badge

ใช้สำหรับลบค่า Badge ที่เก็บไว้บนเซิร์ฟเวอร์ MTPush เทียบเท่ากับการเรียก:

setBadge: 0
              
              setBadge: 0

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

ตัวอย่างโค้ดล้าง Badge


การตั้งค่า Badge ฝั่ง Server

เมื่อส่ง push notification ต้องกำหนด field badge ใน payload ของ ios

Field Type Optional คำอธิบาย หมายเหตุ
badge Int หรือ String Optional ตัวเลข Badge บนไอคอนแอป • สามารถตั้งค่าเป็น N, +N, หรือ -N โดยที่ N อยู่ในช่วง [0, 99]
• หากค่าเป็น 10 Badge อาจถูกตีความเป็น N, 10+N หรือ 10-N (ค่าต่ำกว่า 0 จะล้าง Badge)
• หากกำหนดเป็น 0 หรือค่าว่าง จะล้าง Badge
• หากไม่กำหนด Badge จะคงค่าเดิม
• MTPush API (SDK) กำหนดค่า Badge เริ่มต้นเป็น "+1"

Huawei / Honor Badge

การตั้งค่าฝั่ง Client

<!-- การกำหนด permission ใน AndroidManifest.xml --> <uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/> <uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>
              
              <!-- การกำหนด permission ใน AndroidManifest.xml -->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
<uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

การตั้งค่าบน Portal

สำคัญ:
ต้องกำหนด Activity หลัก (entry Activity) ของแอปให้ถูกต้อง Huawei และ Honor ใช้ตรรกะเดียวกัน

ตัวอย่างการตั้งค่า Activity


พารามิเตอร์ขั้นสูงฝั่ง Server

พารามิเตอร์ คำอธิบาย คุณค่าทางธุรกิจ
badge_add_num เพิ่มตัวเลข Badge เหมาะกับแอปแชทเพื่อป้องกัน Badge ไม่ตรงกับสถานะจริง
badge_set_num กำหนด Badge เป็นค่าเฉพาะ เหมาะกับการแสดงสถานะ เช่น งานที่ต้องดำเนินการ
badge_class ระบุ Activity ที่ใช้ Badge เพื่อให้ Badge แสดงผลกับแอปเป้าหมายได้ถูกต้อง

Xiaomi Badge

อุปกรณ์ที่ใช้ MIUI 6 ขึ้นไป รองรับ Badge แบบตัวเลข
ระบบ MIUI จะจัดการตรรกะ Badge ให้อัตโนมัติ:

📱 รับการแจ้งเตือน → badge +1 (นักพัฒนาไม่ต้องเขียนโค้ดเพิ่ม)
🔄 เปิดแอป → badge ถูกล้างโดยอัตโนมัติ
MIUI 6+ รองรับทุกรุ่น ครอบคลุมผู้ใช้ Xiaomi ส่วนใหญ่


ข้อแนะนำการใช้งานที่ดีที่สุด

กลยุทธ์ข้ามแพลตฟอร์มแบบรวมศูนย์

  • แบ่งระดับการรองรับ: ให้ความสำคัญกับการรองรับ Badge แบบตัวเลขเต็มรูปแบบบน iOS, Huawei, Xiaomi
  • สำรองความเข้ากันได้: ใช้จุดสีแดง (red dot) สำหรับ OPPO, VIVO และแพลตฟอร์มที่ไม่รองรับ
  • ประสบการณ์ผู้ใช้สม่ำเสมอ: พยายามให้ตรรกะของ Badge เหมือนกันมากที่สุดในทุกแพลตฟอร์ม
icon
ติดต่อฝ่ายขาย