2025 年 3 月 27 日より、AOSP のビルドとコントリビューションには aosp-main
ではなく android-latest-release
を使用することをおすすめします。詳細については、AOSP の変更をご覧ください。
Bluetooth
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Bluetooth は Android 13 以降、オプションのメインライン モジュールになっています。Bluetooth メインライン モジュールは、すべての Android ユーザーに一貫性のある高品質な Bluetooth エクスペリエンスを提供することを目的としています。
目的
Bluetooth モジュールは、パートナー、ユーザー、アプリ デベロッパーに質の高いエクスペリエンスを提供することを主な目標としています。これを実現するための重要な方法をいくつか紹介します。
- 新機能、バグ修正、相互運用性修正、セキュリティ修正によって、アップデートを迅速かつ頻繁にリリースする
- パートナーが繰り返し行う作業を減らす
- コードベースの毎年の再ベースにかかるオーバーヘッドを削減
- 従来のデバイスに OTA をロールアウトするオーバーヘッドを削減
- 断片化を削減し、アプリ デベロッパーとユーザーに一貫したエクスペリエンスを提供する
- Android エコシステム内のグローバルなセキュリティを向上させる。Android のセキュリティ脆弱性の多くは Bluetooth に関係しています。
パッケージは、Bluetooth APK(現在 packages/modules/Bluetooth/android/app
で定義されます)、Google ネイティブ ライブラリ(libbluetooth.so
および libbluetooth_jni.so
)、Google の API(packages/modules/Bluetooth/framework/java/android/bluetooth
にあります)、Google の HIDL インターフェースを含む APEX です。
モジュールの境界
図 1. Bluetooth モジュールの境界
既存のすべてのリポジトリを system/bt
の下の単一のリポジトリに移行しています。図 1 は、モジュールを構成する現在のディレクトリを示しています。
依存関係
Bluetooth モジュールには、次の依存関係があります。
- クリーンアップされる予定の送受信
@hide
API の使用
- Bluetooth APK、
libbluetooth.so
、libbluetooth_jni.so
に必要なライブラリ
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-03-10 UTC。
[[["わかりやすい","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-03-10 UTC。"],[],[],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)"]]