โครงการริเริ่มด้านบุคคลและการสนทนาเป็นโครงการริเริ่มเกี่ยวกับ Android ที่เกิดขึ้นมาหลายปี มีจุดประสงค์เพื่อยกระดับผู้คนและการสนทนาในแพลตฟอร์มระบบของโทรศัพท์ ลำดับความสำคัญนี้ขึ้นอยู่กับข้อเท็จจริงที่ว่าการสื่อสารและการมีปฏิสัมพันธ์กับ ยังคงเป็นส่วนสำคัญและมีคุณค่ามากที่สุดสำหรับคนส่วนใหญ่ ผู้ใช้ของเราในทุกข้อมูลประชากร
เราได้เปิดตัวฟีเจอร์ต่างๆ ใน Android 11 เพื่อรองรับ ทั้งผู้คนและการสนทนา
พื้นที่การสนทนา
ในอุปกรณ์พกพา จะมีส่วนที่แยกต่างหากที่ด้านบนของการแจ้งเตือน เฉดสีที่มีเฉพาะการสนทนาแบบเรียลไทม์กับผู้คน (เช่น การโทรและ ข้อความแชท รวมถึงแชทเป็นกลุ่ม) การแจ้งเตือนในพื้นที่ทำงานนี้ ดูและดำเนินการแตกต่างจากการแจ้งเตือนที่ไม่ใช่การสนทนาในโทรศัพท์หลายรุ่น
- มีดีไซน์ที่แตกต่าง โดยเน้นอวาตาร์ที่แสดงถึง จำนวนคนรวมกับแอปที่ใช้การสนทนา
- การแตะที่การแจ้งเตือนจะเปิด การสนทนาในแอป (หรือลูกโป่ง หาก การสนทนาแสดงเป็นบับเบิลไว้ก่อนหน้านี้) การแตะที่เคอร์เซอร์ข้อความ จะขยายข้อความใหม่ในหน้าต่างแบบเต็ม พร้อมกับรายการตัวเลือกทั้งหมด
- การดำเนินการสำหรับการสนทนาโดยเฉพาะจะมีให้เลือก (บางรายการด้วยการกดค้าง) ดังนี้
- ทำเครื่องหมายการสนทนานี้ว่าสำคัญ
- เลื่อนระดับการสนทนานี้เป็นบับเบิล (แสดงเมื่อแอปรองรับเท่านั้น ลูกโป่ง)
- ปิดเสียงการแจ้งเตือนสำหรับการสนทนานี้
- ตั้งค่าเสียงหรือการสั่นที่กำหนดเองสำหรับการสนทนานี้
การสนทนาในลูกโป่ง
เริ่มตั้งแต่ Android 11 ลูกโป่ง เริ่มจากการแจ้งเตือนในส่วน "การสนทนา" เฉพาะการแจ้งเตือนที่มี ทางลัดที่เชื่อมโยงจะสามารถแสดงเป็นบับเบิลได้ แสดงการสนทนาเป็นบับเบิลโดยอัตโนมัติ หากมีการทำเครื่องหมายว่าสำคัญหรือถูกทำให้แสดงเป็นบับเบิลในการแจ้งเตือน เฉดสี
ทางลัดของการสนทนา
ทางลัดไปยังการสนทนาจะปรากฏใน Launcher และด้านข้าง มานาน ทางลัดการแชร์ใน Sharesheet
หลักเกณฑ์ 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
การแจ้งเตือนการสนทนาก่อนที่ผู้ใช้จะไม่เห็นข้อความ หนึ่ง เช่น การยกเลิกการแจ้งเตือนเมื่อเปิดแอปในมุมมอง ที่ผู้ใช้ไม่สามารถมองเห็นหรือส่งข้อความถึงข้อความได้ หากผู้ใช้ไม่ได้ให้สิทธิ์ โอกาสที่จะได้อ่านหรือจัดการกับข้อความ การแจ้งเตือนที่ถูกยกเลิก และ ระบบจะนำบับเบิลที่เกี่ยวข้องออก ส่งผลให้บริบทการสนทนาหายไป - โปรดระบุ
data
URI สำหรับข้อมูลเมตาที่เกี่ยวกับ MIME ที่เชื่อมโยงกับข้อความ ซึ่งทำให้คุณได้รับ ในการมอบประสบการณ์ ที่สมบูรณ์ยิ่งขึ้นในการแจ้งเตือน - ใช้
Android 12 status
API เพื่อทำให้วิดเจ็ตการสนทนาน่าสนใจยิ่งขึ้น - นำแนวทางปฏิบัติที่ดีที่สุดต่อไปนี้ไปใช้สำหรับ
ทางลัดการสนทนา
- เผยแพร่ทางลัดสำหรับการสนทนาในแอปขาเข้าและขาออกที่
ข้อความ Push ข้อความขาเข้าและขาออกสำหรับ
ควรมีรหัสทางลัดเดียวกัน ใช้
pushDynamicShortcut()
เพื่อเผยแพร่ทางลัดและรายงานการใช้งาน - หากต้องการหลีกเลี่ยงการตัดคลิปอวาตาร์ทางลัดโดยไม่ตั้งใจ ให้ใส่
AdaptiveIconDrawable
สำหรับไอคอนทางลัด ดูรายละเอียดเพิ่มเติมได้ที่การส่งภาพทางลัด - หากต้องการช่วยระบบโปรโมตทางลัดของคุณ ให้ทําตาม หลักเกณฑ์สำหรับการได้อันดับที่ดีที่สุด ระบบจะจัดอันดับทางลัดในแพลตฟอร์มต่างๆ ของระบบ รวมถึง Android แชร์ชีต หากเป็นทางลัดการแชร์
- ตรวจสอบว่าทางลัดการสนทนา
intents
เปิดการสนทนาที่เกี่ยวข้องได้โดยตรง - ใช้ไลบรารีที่ใช้ร่วมกันเพื่อตั้งค่าทางลัดเพื่อความสะดวก
conversation
ที่เกี่ยวข้อง
- เผยแพร่ทางลัดสำหรับการสนทนาในแอปขาเข้าและขาออกที่
ข้อความ Push ข้อความขาเข้าและขาออกสำหรับ
ควรมีรหัสทางลัดเดียวกัน ใช้
การทดสอบการแจ้งเตือนการสนทนาและแป้นพิมพ์ลัด
หากปฏิบัติตามหลักเกณฑ์ของพื้นที่การสนทนา การสนทนาควรปรากฏในพื้นที่การสนทนาโดยอัตโนมัติ คุณยืนยันว่าได้ผสานรวมทางลัดอย่างถูกต้องได้โดยกดค้าง ในการแจ้งเตือนนั้น หากการผสานรวมเป็นไปอย่างถูกต้อง UI จะแสดง การสนทนาที่เกี่ยวกับการสนทนา หากการแจ้งเตือนไม่ได้ลิงก์กับทางลัด UI แสดงข้อความระบุว่าแอปไม่รองรับฟีเจอร์การสนทนา
แป้นพิมพ์ลัดที่เพิ่มจะแสดงเมื่อกดเครื่องเรียกใช้งานแอปค้างไว้ อย่าลืมทดสอบว่าแป้นพิมพ์ลัดจะนำคุณไปยังตำแหน่งที่ถูกต้องภายใน แอป
เพิ่มทางลัดการแชร์แล้ว จะแสดงในแถวการแชร์โดยตรงของชีตเมื่อแชร์เนื้อหา ที่ทางลัดจะรับได้
วิดเจ็ตการสนทนา
ใน Android 12 ฟีเจอร์วิดเจ็ตการสนทนาสร้างขึ้นจากผู้ใช้และ ฟีเจอร์การสนทนาที่เปิดตัวใน Android 11 โดยการอนุญาตให้แอปแสดงสถานะการสนทนาในวิดเจ็ตการสนทนา
วิดเจ็ตการสนทนาช่วยส่งเสริมการโต้ตอบของผู้ใช้โดยช่วยให้เปิดได้ง่ายๆ บนหน้าจอหลัก วิดเจ็ตเหล่านี้คือทางลัดขั้นสูงที่ช่วยให้ผู้ใช้ กลับไปยังการสนทนาได้อย่างมีประสิทธิภาพ ในขณะเดียวกันก็แสดงตัวอย่าง สถานะการสนทนาหรือข้อมูลอื่นๆ ที่เกี่ยวข้อง
ตรวจสอบว่าแอปรองรับวิดเจ็ตการสนทนา
หากต้องการตรวจสอบว่าแอปรองรับวิดเจ็ตการสนทนา คุณจะต้องมีแอตทริบิวต์ต่อไปนี้ อุปกรณ์ Android อย่างน้อย 2 เครื่อง (ใช้ Android 12 ทั้งคู่) และบัญชีผู้ใช้ 2 บัญชี (หนึ่งคำต่ออุปกรณ์) เพื่อแลกเปลี่ยนข้อความ เพื่อจุดประสงค์ของกระบวนการนี้ เราจะเรียกบัญชีเหล่านี้ว่า "ผู้ใช้ A" และ "ผู้ใช้ B"
ทำตามขั้นตอนต่อไปนี้ให้เสร็จสมบูรณ์
- กด Launcher ค้างไว้ในอุปกรณ์ของผู้ใช้ ก ในเครื่องมือเลือกวิดเจ็ต ให้แตะ วิดเจ็ตใหม่สำหรับการสนทนาดังที่แสดงในรูปที่ 2
- ลากวิดเจ็ตไปที่หน้าจอหลัก รายการการสนทนาที่ใช้งานอยู่หรือล่าสุด จากแอปของผู้ใช้ ก ควรสามารถเลือกได้
- จากนั้นให้ส่งข้อความทดสอบไปยังผู้ใช้ A ในอุปกรณ์ของผู้ใช้ B
- กลับไปที่อุปกรณ์ของผู้ใช้ ก. ให้ยืนยันว่าวิดเจ็ตได้รับการอัปเดตเพื่อแสดง การแจ้งเตือนข้อความจากผู้ใช้ B
- ไม่บังคับ: ให้ผู้ใช้ A และผู้ใช้ B ตั้งค่าการสนทนาเป็น ค่าสถานะเพื่อให้แน่ใจว่าวิดเจ็ตแสดงค่าอย่างถูกต้อง สำหรับรายการ ค่าสถานะ โปรดดูที่ ConversationStatus