從 Android 13 開始,藍牙是可選的 Mainline 模組。Bluetooth Mainline 模組旨在為所有 Android 使用者提供一致且高品質的 Bluetooth 體驗。
動機
藍牙模組的主要動機,是為合作夥伴、使用者和應用程式開發人員提供優質體驗。我們將透過以下幾種主要方式達成這項目標:
- 更快、更頻繁地發布更新,提供新功能、錯誤修正、可互操作性修正和安全性修正。
- 減少合作夥伴的重複性工作
- 減少每年重新設定程式碼集的額外負擔。
- 減少為舊版裝置推出 OTA 的額外負擔。
- 減少分散現象,為應用程式開發人員和使用者提供一致的體驗
- 改善 Android 生態系統中的全球安全性。許多 Android 安全漏洞都涉及藍牙。
套件格式
這個套件是 APEX,其中包含藍牙 APK (目前在 packages/modules/Bluetooth/android/app
中定義)、原生程式庫 (libbluetooth.so
和 libbluetooth_jni.so
)、API (位於 packages/modules/Bluetooth/framework/java/android/bluetooth
下方) 和 HIDL 介面。
模組邊界
圖 1. 藍牙模組邊界
我們正在將所有現有的存放區遷移至 system/bt
下的單一存放區。圖 1 代表模組目前的組成目錄。
依附元件
藍牙模組具有下列依附元件:
- 即將清除的傳入和傳出
@hide
API 用量 - 藍牙 APK、
libbluetooth.so
和libbluetooth_jni.so
所需的程式庫