Das in Android 13 eingeführte Ultrabreitband-Modul (UWB) enthält einen UWB-Stack über der HAL-Schnittstelle, der auf der FiRa-Spezifikation basiert.
Das UWB-Modul bietet Geräteherstellern folgende Vorteile:
- Ein vollständiger nativer UWB-Stack für Android, der für UWB-kompatible Geräte verfügbar ist
- Verbesserte Qualität und Interoperabilität von UWB in der gesamten Android-Umgebung
- Schnellere und flexiblere Unterstützung für neue FiRa-Anwendungsfälle und ‑Spezifikationsupdates
Details
Im Folgenden finden Sie Details zum UWB-Modul:
- Enthält einen vollständigen UWB-Stack in AOSP in Android 13, der die von FiRa definierte UCI-Spezifikation als HAL-Schnittstelle verwendet.
- Ermöglicht System-Apps die Bereitstellung benutzerdefinierter Profile.
- Enthält eine System-API-Oberfläche, mit der System-Apps benutzerdefinierte Profile in ihren Positionsermittlungssitzungen verwenden können.
- Umfasst eine Infrastruktur zur Angabe von RROs, mit denen Gerätehersteller das Verhalten des Stacks anpassen können.
UWB-Stack-Architektur
Der UWB-Stack besteht aus dem UWB-Mainline-Modul und der HAL-Implementierung, die von einem UWB-Chipanbieter bereitgestellt wird.
Abbildung 1. UWB-Stack-Architektur
Modulgrenze
Der Modulcode befindet sich an den folgenden Speicherorten:
UWB Mainline Apex:
com.android.uwb
UWB API-Oberfläche (Java)
- Speicherort des Codes:
packages/modules/Uwb/framework
- Prozess:
<bootclasspath>
- Speicherort des Codes:
UwbService (Java)
- Codespeicherort:
packages/modules/Uwb/service
- Prozess:
system_server
- Codespeicherort:
Uwb Native Stack (C++/Rust)
- Speicherort des Codes:
external/uwb
- Prozess:
system_server
- Speicherort des Codes:
HAL-Schnittstelle und ‑Implementierungen (C++)
- Position des Schnittstellencodes:
hardware/interfaces/uwb
- Speicherort des Implementierungscodes:
vendor/<vendor-name>/uwb
- Prozess:
<vendor defined>
- Position des Schnittstellencodes:
Paketformat
Das UWB-Modul (com.google.android.uwb
) verwendet das APEX-Format.
Abhängigkeiten
Das UWB-Hauptmodul hängt von Folgendem ab:
- HAL-Implementierung von einem UWB-Chipanbieter.
- Bluetooth-Stack für alle OOB-Interaktionen.
- Secure Element für alle sicheren Dienstinteraktionen.
- Kern-Framework für die Durchsetzung von UWB-Laufzeitberechtigungen.