Bluetooth

Bluetooth adalah modul Mainline opsional yang dimulai dengan Android 13. Modul Mainline Bluetooth bertujuan untuk memberikan pengalaman Bluetooth yang konsisten dan berkualitas tinggi kepada semua pengguna Android.

Motivasi

Motivasi utama di balik modul Bluetooth adalah untuk memberikan pengalaman berkualitas tinggi kepada partner, pengguna, dan developer aplikasi. Kita akan mencapainya dengan beberapa cara utama:

  1. Kirimkan update lebih cepat dan lebih sering dengan fitur baru, perbaikan bug dan interoperabilitas, serta perbaikan keamanan.
  2. Mengurangi pekerjaan berulang untuk partner
    1. Mengurangi overhead pembuatan ulang codebase setiap tahun.
    2. Mengurangi overhead peluncuran OTA ke perangkat lama.
  3. Mengurangi fragmentasi dan menciptakan pengalaman yang konsisten bagi developer dan pengguna aplikasi
  4. Meningkatkan keamanan global dalam ekosistem Android. Sebagian besar kerentanan keamanan Android melibatkan Bluetooth.

Format paket

Paket ini adalah APEX yang berisi APK Bluetooth (saat ini ditentukan dalam packages/modules/Bluetooth/android/app), library native kami (libbluetooth.so dan libbluetooth_jni.so), API kami (di bagian packages/modules/Bluetooth/framework/java/android/bluetooth), dan antarmuka HIDL kami.

Batas modul

Arsitektur modul Bluetooth utama

Gambar 1. Batas Modul Bluetooth

Kita memigrasikan semua repo yang ada ke dalam satu repo di system/bt. Gambar 1 menunjukkan direktori saat ini yang akan membentuk modul kita.

Dependensi

Modul Bluetooth memiliki dependensi pada hal berikut:

  • Penggunaan @hide API masuk dan keluar yang akan dihapus
  • Library yang diperlukan untuk APK Bluetooth, libbluetooth.so, dan libbluetooth_jni.so