ภาพรวม

ชุดรายการวิทยุออกอากาศประกอบด้วยองค์ประกอบต่างๆ ที่แสดงในรูปที่ 1

สถาปัตยกรรม Broadcast Radio
รูปที่ 1 สถาปัตยกรรม Broadcast Radio

แอปข้อมูลอ้างอิงวิทยุ

ดูรายละเอียดเกี่ยวกับวิธีใช้การควบคุมวิทยุได้ที่ การติดตั้งวิทยุบังคับ

ตัวอย่างแอปวิทยุ Java (packages/apps/Car/Radio) ทำหน้าที่เป็นข้อมูลอ้างอิง การใช้งานของคุณ เมื่อบริการแอปเริ่มทำงาน จะขอให้โปรแกรมจัดการวิทยุเปิดตัวรับสัญญาณวิทยุ จากนั้นให้ทำดังนี้ แอปสามารถส่งคำขอไปยังตัวรับสัญญาณวิทยุ เช่น ปรับจูนสถานีวิทยุ ความถี่ที่ต้องการ หรือเพื่อค้นหาสถานีวิทยุถัดไปที่มีให้ แอปได้รับการอัปเดตจากโปรแกรมจัดการวิทยุและ ตัวรับสัญญาณวิทยุในวิทยุ เช่น ข้อมูลรายการปัจจุบัน รายชื่อรายการวิทยุ การกำหนดค่า และ พารามิเตอร์ที่ผู้ให้บริการกำหนด แอปวิทยุอ้างอิงรองรับเฉพาะวิทยุ AM และ FM เท่านั้น OEM สามารถแก้ไขหรือ แทนที่แอปวิทยุได้ตามต้องการ

ผู้จัดการวิทยุ

เมื่อแอปขอให้โปรแกรมจัดการวิทยุเปิดจูนเนอร์ โปรแกรมจัดการวิทยุ (frameworks/base/core/java/android/hardware/radio/RadioManager.java) ขอให้มีการ Broadcast Radio Service (BRS) เพื่อเปิดเซสชันตัวรับสัญญาณ จากนั้นจบเซสชันในตัวรับสัญญาณวิทยุ (frameworks/base/core/java/android/hardware/radio/RadioTuner.java) ซึ่งระบบจะส่งคืน ไปยังแอป ตัวรับสัญญาณวิทยุจะกำหนด API (เช่น ทำนอง การก้าวเดิน และการยกเลิก) ที่สามารถเรียกจากแอปวิทยุ และส่งคำขอไปยัง BRS วิธีการโทรกลับ (RadioTuner.Callback) ที่กำหนดไว้ในวิทยุ ตัวรับสัญญาณจะส่งข้อมูลอัปเดตเกี่ยวกับ HAL ของรายการวิทยุออกอากาศ เช่น ข้อมูลรายการปัจจุบัน รายการ รายการ และพารามิเตอร์ที่ผู้ให้บริการกำหนด ตั้งแต่ BRS ไปจนถึงแอป

บริการวิทยุกระจายเสียง

บริการวิทยุกระจายเสียง (frameworks/base/services/core/java/com/android/server/broadcastradio) เป็นไคลเอ็นต์ สำหรับ Broadcast Radio HAL BRS ประสานงานกับผู้จัดการวิทยุหลายรายด้วย Broadcast Radio HAL BRS สนับสนุน ภาษานิยามอินเทอร์เฟซ HAL (HIDL) และ การออกอากาศภาษานิยามอินเทอร์เฟซ Android (AIDL) HAL ของวิทยุ BRS จะลิงก์กับ AIDL HAL เมื่อมีบริการ AIDL HAL อยู่ มิฉะนั้น บริการจะลิงก์กับ HIDL HAL BRS สร้างโมดูลวิทยุ สำหรับอินสแตนซ์ HAL ที่มีอยู่แต่ละรายการ (เช่น AM, FM และ DAB)

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

HAL สถานีวิทยุการออกอากาศ

หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับอินเทอร์เฟซ HIDL และ AIDL ของรายการวิทยุออกอากาศ และความแตกต่างระหว่าง ทั้ง 2 อย่าง โปรดดู อินเทอร์เฟซ HAL ของ Broadcast Radio