Bluetooth 是從 Android 13 開始的可選 Mainline 模塊。Bluetooth Mainline 模塊旨在為所有 Android 用戶提供一致、高質量的藍牙體驗。
動機
藍牙模塊背後的主要動機是為合作夥伴、用戶和應用程序開發人員提供高質量的體驗。我們將通過幾個關鍵方式實現這一目標:
- 通過新功能、錯誤和互操作性修復以及安全修復,更快、更頻繁地發布更新。
- 減少合作夥伴的重複性工作
- 減少每年重新建立代碼庫的開銷。
- 減少向舊設備推出 OTA 的開銷。
- 減少碎片並為應用程序開發人員和用戶創造一致的體驗
- 提高 Android 生態系統內的全球安全性。很大一部分 Android 安全漏洞涉及藍牙......
包裝格式
該包是一個 APEX,包含藍牙 APK(當前在packages/modules/Bluetooth/android/app
中定義)、我們的本地庫( libbluetooth.so
和libbluetooth_jni.so
)、我們的 API(在packages/modules/Bluetooth/framework/java/android/bluetooth
下) packages/modules/Bluetooth/framework/java/android/bluetooth
)和我們的 HIDL 接口。
模塊邊界
圖 1.藍牙模塊邊界
我們正在將所有現有的存儲庫遷移到system/bt
下的一個存儲庫中。圖 1 表示將構成我們模塊的當前目錄。
依賴關係
藍牙模塊依賴於以下內容:
- 將被清理的傳入和傳出
@hide
API 用法 - 藍牙 APK、
libbluetooth.so
和libbluetooth_jni.so
所需的庫