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

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

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

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


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

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

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

การสนทนาในลูกโป่ง

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

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

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

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

หลักเกณฑ์เกี่ยวกับ 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 และการแจ้งเตือนต้องอ้างอิง ทางลัดที่ใช้ได้นานจากการแจ้งเตือนที่เผยแพร่ที่ เมื่อมีการโพสต์การแจ้งเตือน การแจ้งเตือนที่เป็นไปตามข้อกำหนดเหล่านี้ ปรากฏในพื้นที่การสนทนาโดยมีลักษณะการทำงานนี้:

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

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

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

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

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

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

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

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

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

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

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

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

เราได้อนุญาตให้ผู้ใช้นำการสนทนาออกจากส่วนการสนทนาได้หากรู้สึกว่าการสนทนานั้นไม่อยู่ในส่วนที่เหมาะสม

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ทำตามขั้นตอนต่อไปนี้ให้เสร็จสมบูรณ์

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