UI ของวิทยุจะติดตั้งใช้งานเป็นแอปอิสระ โปรดดูวิธีการผสานรวม UI ของวิทยุเข้ากับฮาร์ดแวร์ของวิทยุที่หัวข้อติดตั้งใช้งานวิทยุ
ส่วนต่อไปนี้จะอธิบายวิธีผสานรวม UI วิทยุกับสื่อเพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ราบรื่น ซึ่งช่วยให้ผู้ใช้โต้ตอบกับแหล่งที่มาของสื่อและวิทยุได้ราวกับเป็นแอปเดียว
โฟลว์การเปลี่ยนแหล่งที่มาของสื่อของผู้ใช้
แผนภาพต่อไปนี้แสดงวิธีที่การใช้งานอ้างอิงของ Radio and Media ใช้เวิร์กโฟลว์การเปลี่ยนแอปของผู้ใช้
รูปที่ 1 โฟลว์การเปลี่ยนแหล่งที่มาของสื่อของผู้ใช้
ไลบรารี car-media-common
จะกำหนด Intent ของ Android ที่ใช้เปิดเครื่องมือเลือกแหล่งที่มาของสื่อได้ เพื่อให้การเปลี่ยนจากวิทยุไปยังแอปอื่นๆ ในสื่อเป็นไปอย่างราบรื่น ใน AOSP จะมีการใช้ตัวเลือกนี้ใน App Launcher ซึ่งแสดง UI เดียวกันสำหรับการเปิดแอป แต่กรองให้แสดงเฉพาะแหล่งที่มาของสื่อ
OEM สามารถเลือกที่จะใช้ App Launcher เวอร์ชันปัจจุบันตามที่เป็นอยู่ หรือจะใช้ตัวเลือกแหล่งที่มาของสื่อที่กำหนดเองก็ได้
ตัวเลือกทํางานได้ 2 โหมด ดังนี้
- ขั้นตอนปกติ หลังจากใช้ตัวเลือกแล้ว แหล่งที่มาที่เลือกจะแสดงในสื่อเพื่อให้ผู้ใช้เรียกดูเนื้อหาได้
- ในฐานะสวิตช์ ใช้ตัวเลือกเพื่อสลับแหล่งที่มา แต่สื่อจะไม่แสดงต่อผู้ใช้ ซึ่งรวมถึงไอคอนตัวเลือกในหน้าแรก หลังจากเลือกแหล่งที่มาแล้ว ระบบจะแสดงหน้าจอก่อนหน้าล่าสุดต่อผู้ใช้ (ในกรณีนี้คือหน้าแรก)
คุณสามารถรับ Intent ที่ใช้ในการสลับระหว่างแหล่งที่มาของสื่อได้จากวิธี MediaSource#getSourceSelectorIntent()
ซึ่งยอมรับ popup
แบบบูลีนที่จะแสดงผล Intent เพื่อเปิดใช้งานแต่ละขั้นตอนที่อธิบายไว้ข้างต้น
กำหนด Intent จริงได้ที่
packages/apps/Car/libs/car-media-common/res/values/config.xml
หากต้องการปรับแต่งการกำหนดค่านี้ ให้ใช้การวางซ้อนเวลาสร้าง
แทนที่แอปวิทยุ
เนื่องจากแอปวิทยุใช้การเรียกดูสื่อและเซสชันสื่อ แอปวิทยุจึงแสดงในตัวเปิดแอป หากต้องการป้องกันไม่ให้เปิด Media เมื่อผู้ใช้คลิกไอคอน คุณต้องใช้องค์ประกอบ 2 รายการ วิทยุต้อง
- มีกิจกรรมตัวเปิด
- ประกาศเป็นแหล่งที่มาที่กําหนดเอง โดยให้เพิ่มชื่อคอมโพเนนต์ลงในคีย์
custom_media_packages
ในcar-media-common/res/values/config.xml
ข้อจำกัดในการขับขี่ UX
สื่อต้องเป็นไปตามข้อจำกัดทั้งหมดเกี่ยวกับการรบกวนการขับขี่ UX โดย Media ต้องฟัง CarUXRestrictionManager และนำนโยบายทั้งหมดไปใช้
- สื่อต้องเชื่อมต่อกับไลบรารี Car และรับอินสแตนซ์ของ CarUXRestrictionManager
- สื่อต้องสมัครรับการอัปเดตในรายการ CarUxRestrictions และนำไปใช้งานตามที่ระบุไว้ในเอกสาร
- ข้อมูลต่อไปนี้มีความสำคัญอย่างยิ่งสำหรับสื่อ
UX_RESTRICTIONS_NO_SETUP
ในกรณีนี้ คุณต้องปิดใช้ขั้นตอนการลงชื่อเข้าใช้UX_RESTRICTIONS_LIMIT_STRING_LENGTH
ข้อความแสดงข้อผิดพลาดและข้อความอื่นๆ ที่แอปสื่อระบุต้องจำกัดความยาวไม่เกินที่ระบุ