Bluetooth

Bluetooth は Android 13 以降、オプションのメインライン モジュールになっています。Bluetooth メインライン モジュールは、すべての Android ユーザーに一貫性のある高品質な Bluetooth エクスペリエンスを提供することを目的としています。

目的

Bluetooth モジュールは、パートナー、ユーザー、アプリ デベロッパーに質の高いエクスペリエンスを提供することを主な目標としています。これを実現するための重要な方法をいくつか紹介します。

  1. 新機能、バグ修正、相互運用性修正、セキュリティ修正によって、アップデートを迅速かつ頻繁にリリースする
  2. パートナーが繰り返し行う作業を減らす
    1. コードベースの毎年の再ベースにかかるオーバーヘッドを削減
    2. 従来のデバイスに OTA をロールアウトするオーバーヘッドを削減
  3. 断片化を削減し、アプリ デベロッパーとユーザーに一貫したエクスペリエンスを提供する
  4. 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 です。

モジュールの境界

メインライン Bluetooth モジュール アーキテクチャ

図 1. Bluetooth モジュールの境界

既存のすべてのリポジトリを system/bt の下の単一のリポジトリに移行しています。図 1 は、モジュールを構成する現在のディレクトリを示しています。

依存関係

Bluetooth モジュールには、次の依存関係があります。

  • クリーンアップされる予定の送受信 @hide API の使用
  • Bluetooth APK、libbluetooth.solibbluetooth_jni.so に必要なライブラリ