Ngăn xếp vô tuyến phát sóng bao gồm các thành phần được minh hoạ trong Hình 1.
Ứng dụng tham chiếu đài phát
Để biết chi tiết về cách triển khai điều khiển vô tuyến, hãy xem Triển khai tính năng điều khiển bằng sóng vô tuyến.
Một ứng dụng radio Java mẫu (packages/apps/Car/Radio
) đóng vai trò là tham chiếu
trong quá trình triển khai. Khi khởi động, dịch vụ ứng dụng sẽ yêu cầu Trình quản lý đài phát mở Radio Tuner. Sau đó:
ứng dụng có thể gửi yêu cầu đến Bộ dò vô tuyến, chẳng hạn như dò một đài phát thanh, tần số,
hoặc tìm đài phát thanh có sẵn tiếp theo. Ứng dụng nhận thông tin cập nhật từ Trình quản lý đài và
Bộ dò đài trong đài phát thanh, chẳng hạn như thông tin về chương trình hiện tại, danh sách chương trình phát thanh, cấu hình và
tham số do nhà cung cấp xác định. Ứng dụng Radio tham chiếu chỉ hỗ trợ đài AM và FM. OEM có thể sửa đổi hoặc
thay thế ứng dụng Radio như mong muốn.
Quản lý đài phát thanh
Khi ứng dụng yêu cầu Trình quản lý đài mở một bộ dò, Trình quản lý đài
(frameworks/base/core/java/android/hardware/radio/RadioManager.java
) yêu cầu
Broadcast Radio Service (BRS) để mở một phiên Tuner (Bộ dò) rồi kết hợp phiên đó trong một Radio Tuner
(frameworks/base/core/java/android/hardware/radio/RadioTuner.java
) được trả về
cho ứng dụng.
Radio Tuner xác định các API (chẳng hạn như giai điệu, bước và huỷ) có thể được gọi từ ứng dụng đài phát thanh
rồi gửi yêu cầu đến BRS. Phương thức gọi lại (RadioTuner.Callback
) được xác định trong Radio
Bộ dò gửi thông tin cập nhật về HAL (Lớp trừu tượng phần cứng) cho đài phát thanh, chẳng hạn như thông tin về chương trình hiện tại, chương trình
và các thông số do nhà cung cấp xác định, từ BRS đến các ứng dụng.
Dịch vụ phát thanh truyền hình
Dịch vụ phát thanh truyền hình
(frameworks/base/services/core/java/com/android/server/broadcastradio
) là khách hàng
dịch vụ cho Broadcast Radio HAL. BRS điều phối nhiều Nhà quản lý đài phát thanh bằng Broadcast Radio
HAL (Lớp trừu tượng phần cứng). BRS hỗ trợ
Ngôn ngữ định nghĩa giao diện HAL (HIDL) và
Truyền phát Ngôn ngữ định nghĩa giao diện Android (AIDL)
HAL vô tuyến. BRS liên kết với AIDL HAL khi có bất kỳ dịch vụ AIDL HAL nào;
nếu không, dịch vụ sẽ liên kết với HIDL HAL. BRS tạo một Mô-đun vô tuyến
cho từng thực thể HAL có sẵn (chẳng hạn như AM, FM và DAB).
Mỗi Trình quản lý vô tuyến có thể yêu cầu BRS để tạo phiên chỉnh trên Mô-đun radio tương ứng, dựa trên loại đài phát. Mỗi phiên dò có thể gọi các phương thức, chẳng hạn như như điều chỉnh, bước và huỷ (được định nghĩa trong các giao diện HAL) để thực hiện các thao tác trên thực thể HAL (Lớp trừu tượng phần cứng) tương ứng cho đài phát. Khi một phiên bộ dò nhận được lệnh gọi lại từ HAL thực thể trên bản cập nhật HAL, chẳng hạn như thông tin chương trình hiện tại, danh sách chương trình, cờ cấu hình và thông số của nhà cung cấp, lệnh gọi lại về bản cập nhật được gửi đến tất cả Radio Tuners đều được liên kết với cùng một Mô-đun vô tuyến.
Truyền phát HAL trên đài
Để tìm hiểu thêm về giao diện HIDL và AIDL của đài phát thanh, cũng như sự khác biệt giữa hai là, xem Giao diện HAL của đài phát thanh.