自 2025 年 3 月 27 日起,我們建議您使用 android-latest-release
而非 aosp-main
建構及貢獻 AOSP。詳情請參閱「Android 開放原始碼計畫變更」。
藍牙
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
藍牙模組是 Android 13 推出的選用 Mainline 模組。在 Android 16 以上版本中,這個模組可更新,且內含通過完整認證的雙模藍牙主機堆疊,讓 Android 裝置支援傳統藍牙和藍牙低功耗 (BLE) 功能。
藍牙模組的主要動機是為裝置製造商、使用者和應用程式開發人員提供更高品質的藍牙體驗,方法如下:
更快速地提供更新,包括新功能、錯誤修正、互通性強化功能和安全性修補程式,且不受 Android 作業系統發布週期影響。
減少片段化,為整個 Android 生態系統打造一致的體驗。
簡化合作夥伴開發作業:提供 Android 驗證的藍牙 Mainline 模組,避免頻繁重新設定基準,進而減少開發和測試的負擔。
藍牙模組採用 APEX 格式。com.google.android.bt
套件包含 packages/modules/Bluetooth/android/app
中定義的藍牙 APK、內建程式庫 libbluetooth_jni.so
、packages/modules/Bluetooth/framework/java/android/bluetooth
下的 API,以及 HIDL 介面。
模組邊界
下圖顯示藍牙模組邊界:
圖 1. 藍牙模組邊界。
依附元件
藍牙模組依附於下列項目:
- 傳入和傳出
@hide
API 的用量
- 藍牙 APK (
libbluetooth.so
) 需要的程式庫。
- 藍牙晶片組供應商提供的 HAL 實作
- Android 音訊架構,適用於音訊串流
- Android 電話功能 (用於撥打電話)
- Android 藍牙個人區域網路 (PAN) 網路共用
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2025-07-27 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-27 (世界標準時間)。"],[],[],null,["# Bluetooth\n\nThe Bluetooth module is an optional Mainline module introduced in Android 13.\nIn Android 16 and higher, the module is updatable and contains a fully\ncertified dual-mode Bluetooth host stack, enabling Android devices to support\nboth classic Bluetooth and Bluetooth Low Energy (BLE) functionalities.\n\nThe primary motivation for the Bluetooth module is to provide a higher-quality\nBluetooth experience to device manufacturers, users, and app developers by:\n\n- **Delivering faster updates** with new features, bug fixes, interoperability\n enhancements, and security patches quickly and regularly, independently of\n the Android OS release cycle.\n\n- **Reducing fragmentation** and creating a consistent experience for the\n entire Android ecosystem.\n\n- **Streamlining partner development** by delivering Android-validated\n Bluetooth Mainline modules and avoiding frequent rebasing, thus reducing\n development and testing overhead.\n\nPackage format\n--------------\n\nThe Bluetooth module uses the [APEX](/docs/core/ota/apex) format. The `com.google.android.bt`\npackage contains the Bluetooth APK defined in\n`packages/modules/Bluetooth/android/app`, the built-in library\n`libbluetooth_jni.so`, the APIs under\n`packages/modules/Bluetooth/framework/java/android/bluetooth`, and the HIDL\ninterfaces.\n\nModule boundary\n---------------\n\nThe following diagram shows the Bluetooth module boundary:\n\n**Figure 1**. Bluetooth module boundary.\n\nDependencies\n------------\n\nThe Bluetooth module has dependencies on the following:\n\n- Incoming and outgoing `@hide` API usages\n- Library required for the Bluetooth APK (`libbluetooth.so`).\n- HAL implementation from the Bluetooth chipset provider\n- Android Audio Framework for audio streaming\n- Android telephony for phone calls\n- Android tethering for Bluetooth Personal Area Network (PAN)"]]