การแจ้งเตือนใน Wear OS

การแจ้งเตือนในนาฬิกาใช้ API เดียวกันและมีโครงสร้างเดียวกันกับการแจ้งเตือนในโทรศัพท์

การแจ้งเตือนจะปรากฏบนนาฬิกาได้ 2 วิธีดังนี้

  1. แอปบนอุปกรณ์เคลื่อนที่จะสร้างการแจ้งเตือนและระบบ เชื่อมโยงโดยอัตโนมัติซึ่ง ไปยังนาฬิกา
  2. แอปสำหรับอุปกรณ์สวมใส่จะสร้างการแจ้งเตือน

ในทั้ง 2 สถานการณ์ ให้ใช้เมธอด NotificationCompat.Builder เพื่อสร้างการแจ้งเตือน เมื่อคุณสร้างการแจ้งเตือนด้วยคลาสเครื่องมือสร้าง ระบบจะ จะแสดงการแจ้งเตือนอย่างเหมาะสม ตัวอย่างเช่น เมื่อคุณออกการแจ้งเตือนจาก แอปบนอุปกรณ์เคลื่อนที่ของคุณ การแจ้งเตือนแต่ละรายการจะปรากฏเป็นการ์ดในสตรีมการแจ้งเตือน

ดูตัวอย่างต่อไปนี้เพื่อดูวิธีแสดงการแจ้งเตือน การ์ดแจ้งเตือน

รูปที่ 1 การแจ้งเตือนเดียวกันที่แสดงบนโทรศัพท์และบนนาฬิกา

ใช้หนึ่งใน NotificationCompat.Style เพื่อผลลัพธ์ที่ดีที่สุด

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

การแจ้งเตือนที่แนะนำสำหรับอุปกรณ์ที่สวมใส่ได้

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

คุณสามารถสร้างการแจ้งเตือนที่ขยายได้ เช่นเดียวกับที่คุณทำบนอุปกรณ์เคลื่อนที่ โดยใช้NotificationCompat.Style คลาสย่อย เช่น การแจ้งเตือนมาตรฐานที่ใช้ NotificationCompat.MessagingStyle ซึ่งมีลักษณะดังนี้ วันที่ การแจ้งเตือนที่ขยายได้

รูปที่ 2 ตัวอย่างการแจ้งเตือนเกี่ยวกับ MessagingStyle ใน Wear OS

คุณจะเห็นว่าการแจ้งเตือนหลายรายการ การดำเนินการด้านล่างของแท็ก สถานะขยาย

ตัวอย่างเช่น NotificationCompat.BigPictureStyle, NotificationCompat.BigTextStyle, NotificationCompat.InboxStyle, และ NotificationCompat.MessagingStyle ดูตัวอย่างการแจ้งเตือน ใน GitHub

เคล็ดลับ: หากการแจ้งเตือนมี "ตอบกลับ" เช่น สำหรับการรับส่งข้อความ คุณสามารถปรับปรุงการทำงานของการแจ้งเตือน เช่น เปิดใช้การป้อนข้อมูลด้วยเสียง ตอบกลับโดยตรงจากการตอบกลับแบบข้อความที่สวมใส่ได้หรือข้อความที่กำหนดล่วงหน้าด้วย setChoices() สำหรับข้อมูลเพิ่มเติม โปรดอ่าน เพิ่มปุ่มตอบ

หลีกเลี่ยงการแจ้งเตือนซ้ำ

โดยค่าเริ่มต้น ระบบจะเชื่อมต่อการแจ้งเตือนจากแอปโทรศัพท์ที่ใช้ร่วมกันไปยังนาฬิกาทุกเรือนที่จับคู่ไว้ นี่คือ ตัวเลือกที่ดีถ้าคุณไม่ได้ติดตั้งแอปที่สวมใส่ได้

แต่หากคุณสร้างแอปสมาร์ทวอทช์แบบสแตนด์อโลนและแอปที่ใช้ร่วมกัน แอป สร้างการแจ้งเตือนที่ซ้ำกัน

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

เพิ่มฟีเจอร์สำหรับอุปกรณ์สวมใส่โดยเฉพาะในการแจ้งเตือน

หากคุณต้องการเพิ่มฟีเจอร์เฉพาะสำหรับอุปกรณ์ที่สวมใส่ได้ในการแจ้งเตือน เช่น การซ่อน ไอคอนแอปจากการแจ้งเตือนของอุปกรณ์สวมใส่หรือการให้ผู้ใช้พิมพ์คำตอบจากข้อความ พร้อมการป้อนข้อมูลด้วยเสียง คุณสามารถใช้ NotificationCompat.WearableExtender เพื่อระบุตัวเลือก หากต้องการใช้ API นี้ ให้ทำดังนี้

  1. สร้างอินสแตนซ์ WearableExtender กำลังตั้งค่าตัวเลือกเฉพาะสำหรับอุปกรณ์ที่สวมใส่ได้สำหรับ การแจ้งเตือน
  2. สร้างอินสแตนซ์ของ NotificationCompat.Builder กำลังตั้งค่าพร็อพเพอร์ตี้ที่ต้องการสำหรับ การแจ้งเตือนของคุณตามที่อธิบายไว้ก่อนหน้านี้ในคู่มือนี้
  3. โทร extend() ในการแจ้งเตือนและส่งข้อความใน WearableExtender การดำเนินการนี้จะนำตัวเลือกอุปกรณ์ที่สวมใส่ได้ไปใช้กับการแจ้งเตือน
  4. โทร build() เพื่อสร้างการแจ้งเตือน

หมายเหตุ หากคุณใช้ NotificationManager ของเฟรมเวิร์ก บางฟีเจอร์จาก NotificationCompat.WearableExtender ไม่ทำงาน ดังนั้นโปรดใช้ NotificationCompat

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

ระบุการดำเนินการสำหรับอุปกรณ์ที่สวมใส่ได้เท่านั้น

หากคุณต้องการการทำงานที่แตกต่างกันในนาฬิกาและโทรศัพท์ ให้ใช้ WearableExtender.addAction() เมื่อเพิ่มการดำเนินการด้วยวิธีนี้ อุปกรณ์ที่สวมใส่ได้ไม่ได้แสดงการดำเนินการอื่นใดที่เพิ่มเข้ามา NotificationCompat.Builder.addAction() การดำเนินการที่เพิ่มด้วย WearableExtender.addAction() ปรากฏเฉพาะบนอุปกรณ์ที่สวมใส่ได้ ไม่ใช่ ทางโทรศัพท์