ผู้คนและการสนทนา

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

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

พื้นที่การสนทนา


พื้นที่การสนทนาคือพื้นที่การแจ้งเตือนเฉพาะสำหรับการสนทนาแบบเรียลไทม์
       ระหว่างบุคคล
รูปที่ 1: พื้นที่การสนทนา

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

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

การสนทนาในบับเบิล

หากการแจ้งเตือนเป็นไปตามข้อกำหนดของการสนทนา แพลตฟอร์มจะเปิดการแจ้งเตือนเป็นบับเบิลจากลิ้นชักการแจ้งเตือน
รูปที่ 2: การเปิดการแจ้งเตือนเป็นบับเบิลจาก ลิ้นชักการแจ้งเตือน

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

ทางลัดการสนทนา

ทางลัดไปยังการสนทนาจะปรากฏในตัวเรียกใช้และข้างทางลัดการแชร์ที่แสดงอยู่ตลอดในชีตการแชร์

หลักเกณฑ์เกี่ยวกับ API

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

แป้นพิมพ์ลัดสำหรับการสนทนา

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

หากต้องการเผยแพร่ทางลัดไปยัง การสนทนา ให้เรียกใช้เมธอด ShortcutManagerCompat setDynamicShortcuts() addDynamicShortcuts() หรือ pushDynamicShortcut() (ซึ่งจะจัดการขีดจำกัดของทางลัดสำหรับนักพัฒนาแอปโดยอัตโนมัติ) โดยทางลัดนี้ต้องมีอายุการใช้งานยาวนาน และมีข้อมูล Person แนบมาสำหรับบุคคลอย่างน้อย 1 คน ซึ่งระบุผู้เข้าร่วมคนอื่นๆ ใน การสนทนา นอกจากนี้ เราขอแนะนำให้คุณตั้งค่าLocusIdCompat ด้วย

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

การแจ้งเตือนการสนทนา

ระบบจะถือว่าการแจ้งเตือนเป็นการแจ้งเตือนการสนทนาหากมีลักษณะดังนี้

  • การแจ้งเตือนใช้ MessagingStyle

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

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

ใช้ LocusIdCompat

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

ข้อกำหนดเกี่ยวกับพื้นที่การสนทนาสำหรับแอปที่กำหนดเป้าหมายเป็น Android 10 หรือต่ำกว่า

หากแอปไม่ได้กำหนดเป้าหมายเป็น Android 11 ข้อความของแอปจะยังคงแสดงในพื้นที่การสนทนาได้ อย่างไรก็ตาม แอปยังคงต้องเป็นไปตาม ข้อกำหนดบางอย่าง ส่วนนี้จะอธิบายข้อกำหนดสำหรับแอปเหล่านั้น และลักษณะการทำงานสำรองในกรณีที่แอปไม่เป็นไปตามข้อกำหนด

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

  • การแจ้งเตือนจะแสดงในรูปแบบการสนทนา
  • มีปุ่มบับเบิลให้ใช้งาน หากมีการติดตั้งใช้งาน
  • ฟังก์ชัน เฉพาะการสนทนาจะแสดงในบรรทัด

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

การสำรอง: หากใช้ MessagingStyle แต่ไม่มีทางลัด

หากแอปกำหนดเป้าหมายเป็น Android 10 หรือต่ำกว่า และการแจ้งเตือนใช้ MessagingStyle แต่ไม่ได้เชื่อมโยงข้อความกับทางลัด การแจ้งเตือนจะ แสดงในพื้นที่การสนทนาโดยมีลักษณะการทำงานดังนี้

  • การแจ้งเตือนจะแสดงในรูปแบบการสนทนา
  • ไม่มีปุ่มฟอง
  • ไม่มีฟังก์ชันเฉพาะสำหรับการสนทนาที่แสดงในบรรทัด

การสำรอง: หากไม่ได้ใช้ MessagingStyle แต่แอปเป็นแอปรับส่งข้อความที่ระบบรู้จัก

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

  • การแจ้งเตือนจะแสดงในรูปแบบเก่าก่อน Android 11
  • ไม่มีปุ่มฟอง
  • ไม่มีฟังก์ชันเฉพาะสำหรับการสนทนาที่แสดงในบรรทัด

คำแนะนำ การใช้งาน และการทดสอบ

ส่วนนี้จะให้คำแนะนำทั่วไปเกี่ยวกับวิธีใช้และทดสอบฟีเจอร์การสนทนา

ฉันควรใช้การสนทนาเมื่อใด

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

เราได้ให้สิทธิ์ผู้ใช้ในการนำการสนทนาออกจากส่วนการสนทนาหากผู้ใช้รู้สึกว่าการสนทนานั้นไม่เหมาะสมกับพื้นที่ทำงาน

แนวทางปฏิบัติแนะนำ

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

  • หากต้องการให้ระบบแสดงสายที่ไม่ได้รับในการสนทนาที่มีการจัดลําดับความสําคัญ และปรากฏอย่างถูกต้องในวิดเจ็ต Conversion ให้จัดรูปแบบการแจ้งเตือนสายที่ไม่ได้รับ เป็น conversations โดยตั้งค่าหมวดหมู่เป็น CATEGORY_MISSED_CALL
  • ระบุอวตารคุณภาพสูง (104dp) สำหรับผู้ใช้ มิฉะนั้นระบบจะใช้อักษรย่อของบุคคล ซึ่งเป็นประสบการณ์การใช้งานที่ดึงดูดน้อยกว่า
  • อย่าcancelการแจ้งเตือนการสนทนาก่อนที่ผู้ใช้จะเห็นข้อความ ตัวอย่างหนึ่งของกรณีนี้คือการยกเลิกการแจ้งเตือนเมื่อเปิดแอปในมุมมองที่ผู้ใช้ไม่เห็นหรือจัดการข้อความไม่ได้ หากผู้ใช้ไม่มี โอกาสอ่านหรือจัดการข้อความ ระบบจะนำการแจ้งเตือนที่ยกเลิกและบับเบิลที่ เชื่อมโยงออก ซึ่งจะทำให้สูญเสียบริบทของการสนทนา
  • ระบุ URI สำหรับข้อมูลเมตาที่เกี่ยวข้องกับ MIME ซึ่งเชื่อมโยงกับข้อความ ซึ่งจะช่วยให้คุณมีตัวเลือกในการมอบประสบการณ์ที่ดียิ่งขึ้นในข้อความแจ้ง data
  • ใช้ Android 12 status API เพื่อให้วิดเจ็ตการสนทนาน่าสนใจยิ่งขึ้น
  • ใช้แนวทางปฏิบัติแนะนำต่อไปนี้สำหรับทางลัดการสนทนา
    • เผยแพร่ทางลัดสำหรับการสนทนาในแอปที่รับและส่ง ซึ่งไม่มีการแจ้งเตือนแบบพุช ข้อความขาเข้าและขาออกสำหรับการสนทนาเดียวกันควรมีรหัสทางลัดเดียวกัน ใช้ pushDynamicShortcut() เพื่อเผยแพร่ทางลัดและรายงานการใช้งาน
    • หากต้องการหลีกเลี่ยงการครอบตัดอวาตาร์ทางลัดโดยไม่ตั้งใจ ให้ระบุ AdaptiveIconDrawable สำหรับไอคอนของทางลัด ดูรายละเอียดเพิ่มเติมได้ที่การระบุภาพทางลัด
    • โปรดทำตามหลักเกณฑ์ในการได้รับการจัดอันดับที่ดีที่สุดเพื่อช่วยให้ระบบโปรโมตทางลัดของคุณ ระบบจะจัดอันดับทางลัดของคุณในแพลตฟอร์มต่างๆ ของระบบ รวมถึงชีตการแชร์ของ Android หากเป็นทางลัดสำหรับการแชร์
    • ตรวจสอบว่าแป้นพิมพ์ลัดการสนทนา intents จะเปิดการสนทนาที่เกี่ยวข้องโดยตรง
    • ใช้ไลบรารีความเข้ากันได้เพื่อตั้งค่าแป้นพิมพ์ลัดให้เกี่ยวข้องกับ conversation ได้อย่างสะดวก

การทดสอบการแจ้งเตือนการสนทนาและทางลัด

การกดการสนทนาค้างไว้จะเปิดเมนูการดำเนินการที่เกี่ยวข้องกับการสนทนา
รูปที่ 3: คุณสามารถยืนยันว่าการแจ้งเตือนการสนทนา ได้รับการกำหนดค่าอย่างถูกต้องโดยการกดการแจ้งเตือนค้างไว้และตรวจสอบว่า เมนูการสนทนาปรากฏขึ้น

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

ทางลัดที่เพิ่มจะแสดงเมื่อกดตัวเปิดแอปค้างไว้ อย่าลืมทดสอบว่าทางลัดจะนำคุณไปยังตำแหน่งที่ถูกต้องภายในแอป

ทางลัดการแชร์ที่เพิ่ม จะแสดงในแถวการแชร์โดยตรงของชีตการแชร์เมื่อแชร์เนื้อหาที่ ทางลัดการแชร์รับได้

วิดเจ็ตการสนทนา

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

ใน Android 12 ฟีเจอร์วิดเจ็ตการสนทนาจะต่อยอดจากฟีเจอร์ผู้คนและการสนทนาที่เปิดตัวใน Android 11 โดยอนุญาตให้แอปแสดงสถานะการสนทนาในวิดเจ็ตการสนทนา

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

ตรวจสอบว่าแอปของคุณรองรับวิดเจ็ตการสนทนา

หากต้องการตรวจสอบว่าแอปของคุณรองรับวิดเจ็ตการสนทนา คุณต้องมีอุปกรณ์ Android อย่างน้อย 2 เครื่อง (ทั้ง 2 เครื่องใช้ Android 12) และบัญชีผู้ใช้ 2 บัญชี (บัญชีละ 1 เครื่อง) เพื่อแลกเปลี่ยนข้อความ เพื่อวัตถุประสงค์ของขั้นตอนนี้ เราจะเรียกบัญชีว่า "ผู้ใช้ ก" และ "ผู้ใช้ ข"

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

ทำตามขั้นตอนต่อไปนี้ให้ครบถ้วน

  1. ในอุปกรณ์ของผู้ใช้ ก. ให้กดตัวเรียกใช้งานค้างไว้ ในเครื่องมือเลือกวิดเจ็ต ให้แตะ วิดเจ็ตใหม่สำหรับการสนทนาตามที่แสดงในรูปที่ 2
  2. ลากวิดเจ็ตไปยังหน้าจอหลัก ควรเลือกรายการการสนทนาที่ใช้งานอยู่หรือล่าสุด จากแอปของผู้ใช้ ก. ได้
  3. ตอนนี้ในอุปกรณ์ของผู้ใช้ ข ให้ส่งข้อความทดสอบไปยังผู้ใช้ ก
  4. กลับไปที่อุปกรณ์ของผู้ใช้ ก ให้ตรวจสอบว่าวิดเจ็ตได้รับการอัปเดตเพื่อแสดง การแจ้งเตือนข้อความจากผู้ใช้ ข
  5. ไม่บังคับ: ให้ทั้งผู้ใช้ ก. และผู้ใช้ ข. ตั้งค่าสถานะการสนทนาเป็นค่าสถานะที่แตกต่างกัน เพื่อให้มั่นใจว่าวิดเจ็ตจะแสดงค่าสถานะอย่างถูกต้อง ดูรายการค่าสถานะได้ที่ ConversationStatus