Bluetooth è un modulo Mainline opzionale a partire da Android 13. Il modulo Bluetooth Mainline mira a fornire un'esperienza Bluetooth coerente e di alta qualità a tutti gli utenti Android.
Motivazione
La motivazione principale alla base del modulo Bluetooth è fornire un'esperienza di alta qualità a partner, utenti e sviluppatori di app. Raggiungeremo questo obiettivo in alcuni modi chiave:
- Fornisci aggiornamenti più velocemente e con maggiore frequenza con nuove funzionalità, correzioni di bug, interoperabilità e correzioni di sicurezza.
- Ridurre il lavoro ripetitivo per i partner
- Riduzione del sovraccarico dovuto alla riorganizzazione della base di codice ogni anno.
- Riduzione del sovraccarico derivante dall'implementazione delle OTA sui dispositivi legacy.
- Riduci la frammentazione e crea un'esperienza coerente per gli sviluppatori e gli utenti di app
- Migliora la sicurezza globale all'interno dell'ecosistema Android. Gran parte delle vulnerabilità della sicurezza Android coinvolgono il Bluetooth.
Formato del pacchetto
Il pacchetto è un APEX contenente l'APK Bluetooth (attualmente definito in packages/modules/Bluetooth/android/app
), le nostre librerie native ( libbluetooth.so
e libbluetooth_jni.so
), le nostre API (in packages/modules/Bluetooth/framework/java/android/bluetooth
) e le nostre interfacce HIDL.
Confine del modulo
Figura 1. Confine del modulo Bluetooth
Stiamo migrando tutti i nostri repository esistenti in uno solo sotto system/bt
. La Figura 1 rappresenta le directory attuali che comporranno il nostro modulo.
Dipendenze
Il modulo Bluetooth dipende da quanto segue:
- Utilizzi API
@hide
in entrata e in uscita che verranno ripuliti - Librerie richieste per l'APK Bluetooth,
libbluetooth.so
elibbluetooth_jni.so