การแจ้งเตือนและการวิดเจ็ตการสนทนา

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

Android 12 พัฒนาต่อยอดจากฟีเจอร์เหล่านี้ของ Android 11 โดยเพิ่มฟีเจอร์การสนทนาใหม่ 2 รายการ ได้แก่

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

  • ฟีเจอร์วิดเจ็ตการสนทนาช่วยให้ผู้ใช้เปิดแชทบนหน้าจอหลักได้อย่างง่ายดาย ซึ่งจะแสดงการสนทนาล่าสุดอย่างรวดเร็ว

เอกสารนี้อธิบายแง่มุมต่างๆ ของการใช้งาน การปรับแต่ง และการตรวจสอบความถูกต้องของการแจ้งเตือนและการวิดเจ็ตการสนทนา

ภาพรวมการแจ้งเตือนการสนทนา

Android 11 เปิดตัวระบบพื้นฐานใหม่อย่างการสนทนา ซึ่งแสดงโดยออบเจ็กต์ทางลัดการแชร์ที่มีอยู่ (ซึ่งเปิดตัวพร้อมกับ Android 9)

คุณสามารถใช้งานพรอมต์การสนทนาได้ดังนี้

  • วิธีแชร์ข้อมูลการสนทนาระหว่างแอปต่างๆ ในระบบผ่านแผงการแชร์ (มีอยู่ใน Android 10 แล้ว)

  • สำหรับฟองข้อความ(แป้นพิมพ์ลัดใน Android 11) โปรดดูรูปที่ 1

  • หากต้องการเข้าร่วมพื้นที่การสนทนาใหม่เหนือหน้าต่างแจ้งเตือน (ใช้งานใน Android 11) ดูรูปที่ 2

  • สำหรับการสร้างวิดเจ็ตการสนทนา (ใช้งานใน Android 12)

    conv_bubbles

    รูปที่ 1: การแจ้งเตือนที่เปิดขึ้นเป็นบับเบิลจากลิ้นชักการแจ้งเตือน

    conv_notification

    รูปที่ 2: พื้นที่การสนทนาที่ด้านบนของหน้าต่างแจ้งเตือน

นอกจากการลิงก์กับแป้นพิมพ์ลัดที่แสดงการสนทนาแล้ว การแจ้งเตือนยังใช้ MessagingStyle เพื่อรวมข้อความล่าสุดของการสนทนาในพื้นที่การสนทนาด้วย

พาร์ทเนอร์ GMS ต้องใช้สิ่งต่อไปนี้

  • พื้นที่ทำงานการสนทนาใหม่เป็นส่วนแยกต่างหากที่ด้านบนของหน้าต่างแจ้งเตือน
  • รูปแบบการแจ้งเตือนที่อนุญาตและรองรับรูปแบบบับเบิลเฉพาะการสนทนา

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

ดูการใช้งานอ้างอิงต่อไปนี้ในส่วน SystemUI และ PeopleService ใน AOSP

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

การตรวจสอบความถูกต้อง

โปรดตรวจสอบข้อมูลต่อไปนี้เพื่อให้แน่ใจว่าฟีเจอร์เวอร์ชันของคุณทํางานได้ตามที่มุ่งหวังไว้

  1. แอปที่รองรับ Conversation API อย่างเต็มรูปแบบจะเห็นการแจ้งเตือนในส่วนใหม่ และสามารถปรับแต่งการแจ้งเตือนเหล่านั้นตามการสนทนาแทนNotificationChannel ทั่วไป

  2. บับเบิลเฉพาะการสนทนาใช้งานได้

หากต้องการตรวจสอบการติดตั้งใช้งาน ให้ใช้การทดสอบต่อไปนี้ในแพ็กเกจการแจ้งเตือน

  • การทดสอบ CTS

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • การทดสอบ CTS Verifier

    cts/apps/CtsVerifier/src/com/android/cts/verifier/notifications/
    
    

ภาพรวมของวิดเจ็ตการสนทนา

ใน Android 12 ฟีเจอร์วิดเจ็ตการสนทนาจะอิงตามการแสดงการสนทนาที่สร้างขึ้นใน Android 11 (ตามที่อธิบายไว้ในส่วนก่อนหน้า) โดยอนุญาตให้แอประบุสถานะการสนทนาที่แสดงในวิดเจ็ตการสนทนา

conv_widgets

รูปที่ 3: การสนทนาที่แสดงในวิดเจ็ตการสนทนา

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

พาร์ทเนอร์ต้องติดตั้งใช้งานสิ่งต่อไปนี้

  1. วิดเจ็ตที่ SystemUI ให้มา
  2. ขั้นตอนในการเพิ่มวิดเจ็ตเหล่านี้จากหน้าจอการเลือกวิดเจ็ต
  3. การรองรับการปรับขนาดวิดเจ็ตมีดังนี้
    • ใช้ onAppWidgetOptionsChanged() เพื่อเปลี่ยนเลย์เอาต์เป็นขนาดที่ดีขึ้นเมื่อผู้ใช้เปลี่ยนขนาดเลย์เอาต์หรือหมุนเป็นแนวนอน
    • ใช้ maxResizeHeight, maxResizeWidth, minWidth, minHeight, minResizeWidth, minResizeHeight เพื่อจำกัดการเปลี่ยนแปลงขนาดวิดเจ็ตอย่างถูกต้อง

โปรดคำนึงถึงข้อกำหนดต่อไปนี้เมื่อติดตั้งใช้งานวิดเจ็ตการสนทนา

  • พาร์ทเนอร์ไม่จําเป็นต้องแก้ไขหรือติดตั้งใช้งานโค้ด HAL/ไดรเวอร์/เคอร์เนล
  • ระบบจะใช้ Status API ซึ่งช่วยให้แอปเพิ่มข้อมูลสถานะหรือความพร้อมให้บริการในการสนทนาและวิดเจ็ตที่เกี่ยวข้อง
  • กระบวนการนี้เหมือนกันทั้งการติดตั้งใช้งานอุปกรณ์ใหม่และการติดตั้งใช้งานการอัปเกรด
  • ฟีเจอร์วิดเจ็ตการสนทนาต้องอาศัยฟีเจอร์ใหม่ที่เปิดตัวใน Android 12 ซึ่งจะแคชการสนทนาที่เห็นล่าสุด (เช่น จากการแจ้งเตือน) ฟีเจอร์หลังนี้ช่วยให้ขยายรายการการสนทนาที่ผู้ใช้อาจเพิ่มลงในหน้าจอหลักได้

ดูการใช้งานอ้างอิงต่อไปนี้ในไฟล์ SystemUI และ Launcher3

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

การปรับแต่ง

คุณไม่สามารถเปิดหรือปิดใช้ฟีเจอร์วิดเจ็ตการสนทนาได้ แต่พาร์ทเนอร์สามารถเปลี่ยนเลย์เอาต์ของเทมเพลตวิดเจ็ตได้ ตราบใดที่เป็นไปตามข้อกำหนดของ GMS

การตรวจสอบความถูกต้อง

โปรดตรวจสอบข้อมูลต่อไปนี้เพื่อให้แน่ใจว่าฟีเจอร์เวอร์ชันของคุณทํางานได้ตามที่มุ่งหวังไว้

  1. เมื่อกด Launcher ค้างไว้ คุณจะเพิ่มวิดเจ็ตการสนทนาใหม่สำหรับการสนทนาได้ผ่านเครื่องมือเลือกวิดเจ็ต ดู UI เครื่องมือเลือกวิดเจ็ตในรูปที่ 4

    widget_picker

    รูปที่ 4: UI เครื่องมือเลือกวิดเจ็ตเพื่อเพิ่มวิดเจ็ตการสนทนาใหม่

  2. เมื่อส่งการแจ้งเตือนไปยังอุปกรณ์จากการสนทนาที่เลือก วิดเจ็ตจะอัปเดตเพื่อแสดงการแจ้งเตือนเหล่านั้น

  3. เมื่อใช้สถานะกับการสนทนานั้นโดยใช้ ConversationStatus API วิดเจ็ตจะแสดงสถานะเหล่านั้น

  4. ผู้ใช้สามารถปรับขนาดวิดเจ็ตได้ และวิดเจ็ตจะเปลี่ยนขนาดตาม Launcher ปัจจุบัน เลย์เอาต์วิดเจ็ตต้องทำงานได้ดีกับ Launcher ขนาดต่างๆ ในอุปกรณ์ต่างๆ และการปรับขนาดวิดเจ็ต

หากต้องการตรวจสอบการติดตั้งใช้งาน ให้ใช้การทดสอบต่อไปนี้ในแพ็กเกจการแจ้งเตือน

  • การทดสอบ CTS (PeopleManagerTest) สําหรับแพลตฟอร์ม API

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • การทดสอบด้วยตนเองสำหรับข้อกำหนดของ GMS - การสนทนาสนทนา