Bluetooth ist ein optionales Mainline-Modul ab Android 13. Ziel des Bluetooth-Mainline-Moduls ist es, allen Android-Nutzern eine einheitliche, qualitativ hochwertige Nutzung von Bluetooth zu ermöglichen.
Ziel
Die Hauptmotivation für das Bluetooth-Modul besteht darin, Partnern, Nutzern und App-Entwicklern ein hochwertiges Erlebnis zu bieten. Wir werden dies auf folgende Weise erreichen:
- Schnellere und häufigere Bereitstellung von Updates mit neuen Funktionen, Fehlerkorrekturen, Interoperabilitäts- und Sicherheitskorrekturen.
- Reduzierung sich wiederholender Aufgaben für Partner
- Reduzierter Aufwand für die jährliche Neubasierung der Codebasis.
- Geringerer Aufwand beim Roll-out von Over-the-air-Updates auf ältere Geräte.
- Fragmentierung reduzieren und für App-Entwickler und Nutzer eine einheitliche Umgebung schaffen
- Die globale Sicherheit im Android-Ökosystem verbessern Ein großer Teil der Sicherheitslücken bei Android hat mit Bluetooth zu tun.
Paketformat
Das Paket ist ein APEX, das das Bluetooth-APK (derzeit in packages/modules/Bluetooth/android/app
definiert), unsere nativen Bibliotheken (libbluetooth.so
und libbluetooth_jni.so
), unsere APIs (unter packages/modules/Bluetooth/framework/java/android/bluetooth
) und unsere HIDL-Schnittstellen enthält.
Modulgrenze
Abbildung 1. Bluetooth-Modulgrenze
Wir migrieren alle unsere vorhandenen Repos in ein einziges unter system/bt
.
Abbildung 1 zeigt die aktuellen Verzeichnisse, aus denen unser Modul besteht.
Abhängigkeiten
Das Bluetooth-Modul ist von Folgendem abhängig:
- Ein- und ausgehende
@hide
API-Nutzungen, die bereinigt werden - Für das Bluetooth-APK,
libbluetooth.so
undlibbluetooth_jni.so
erforderliche Bibliotheken