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:
- Kirimkan update lebih cepat dan lebih sering dengan fitur baru, perbaikan bug dan interoperabilitas, serta perbaikan keamanan.
- Mengurangi pekerjaan berulang untuk partner
- Mengurangi overhead pembuatan ulang codebase setiap tahun.
- Mengurangi overhead peluncuran OTA ke perangkat lama.
- Mengurangi fragmentasi dan menciptakan pengalaman yang konsisten bagi developer dan pengguna aplikasi
- 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
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
, danlibbluetooth_jni.so