Über Bluetooth können Geräte Daten übertragen, die für interaktive Dienste wie Audio, Messaging und Telefonie verwendet werden können. Die Bluetooth-Profile, die für verschiedene Dienste verwendet werden, finden Sie unter
include/hardware/bluetooth.h
.
Audio
Über eine Bluetooth-Verbindung können Nutzer Audioinhalte auf Bluetooth-fähigen Geräten streamen. In den meisten Audioanwendungsfällen ist das Android-Gerät die Quelle und das Rendering-Gerät, z. B. ein Lautsprecher oder ein Headset, das Ziel.
Absolute Lautstärkeregelung
In Android 6.0 und höher kann eine Quelle im Android-Bluetooth-Stack eine absolute Lautstärke festlegen, sodass Nutzer die Lautstärke genau steuern können. Das Quellgerät sendet ungedämpfte Audio- und Lautstärkeinformationen an das Senkengerät. Die Senke verstärkt dann das Audio entsprechend den Lautstärkeinformationen, sodass Nutzer die richtige Wiedergabelautstärke hören.
Das Quellgerät kann auch Lautstärke-Benachrichtigungen registrieren. Wenn Lautstärkeänderungen über die Steuerelemente auf dem Senkengerät vorgenommen werden, sendet das Senkengerät eine Benachrichtigung an die Quelle. So kann die Quelle Lautstärkeinformationen auf einer Benutzeroberfläche genau anzeigen.
Die absolute Lautstärkeregelung ist standardmäßig aktiviert. Nutzer können die absolute Lautstärkeregelung in den Einstellungen > System > Entwickleroptionen deaktivieren, indem sie den Schalter Absolute Lautstärkeregelung deaktivieren auf „Ein“ stellen.
Erweiterte Audio-Codecs
In Android 8.0 können Geräte, die das Advanced Audio Distribution Profile (A2DP) verwenden, zusätzliche Audio-Codecs unterstützen. Der Bluetooth-Stack unterstützt die Aushandlung von Audio-Codecs, wenn Geräte eine Verbindung zu einem Remote-Audio-Sink herstellen. Bei dieser Aushandlung wird der beste Codec ausgewählt, der sowohl vom Sender als auch vom Empfänger unterstützt wird, um eine hochwertige Audioausgabe zu ermöglichen. Nach der Auswahl leitet das Gerät alle Audiodaten über den ausgewählten Encoder weiter und sendet sie dann an das Ziel.
Implementierung
Geräte mit Android 8.0, die A2DP unterstützen, erhalten automatisch die zusätzliche Codec-Unterstützung. Gerätehersteller müssen möglicherweise separate Lizenzen und binäre Blobs für einige proprietäre Audio-Codecs erwerben. Neben SBC werden unter Android 8.0 die folgenden Codecs unterstützt:
- AAC
- aptX
- aptX HD
- LDAC
Gerätehersteller können auswählen, welche Codecs ihre Geräte zuerst verwenden sollen. Legen Sie die Codec-Prioritäten fest, indem Sie die folgenden Werte in
res/values/config.xml
ändern:
<!-- Configuring priorities of A2DP source codecs. Larger value means higher priority. Value -1 means the codec is disabled. Value 0 is reserved and should not be used here. Enabled codecs should have priorities in the interval [1, 999999], and each priority value should be unique. --> <integer name="a2dp_source_codec_priority_sbc">1001</integer> <integer name="a2dp_source_codec_priority_aac">2001</integer> <integer name="a2dp_source_codec_priority_aptx">3001</integer> <integer name="a2dp_source_codec_priority_aptx_hd">4001</integer> <integer name="a2dp_source_codec_priority_ldac">5001</integer>
LDAC-Zertifizierung
Das Android Open Source Project (AOSP) enthält einen Encoder für den LDAC-Codec von Sony, sodass dafür keine separate Lizenz oder kein Blob von Sony erforderlich ist. Wenn Sie den LDAC-Codec in Ihr Gerät einbinden möchten, registrieren Sie sich bei Sony und folgen Sie dem LDAC-Zertifizierungsprozess.
Auf der LDAC-Zertifizierungswebsite finden Sie Dokumentationen zu LDAC, z. B. Spezifikationen und Bedienungsanleitungen. Auf der LDAC-Website finden Sie auch Validierungs- und Interoperabilitätstests für Smartphones und Tablets. Senden Sie die bestandenen Testergebnisse an Sony, um die LDAC-Zertifizierung abzuschließen.
UI-Funktionen
Neben der Unterstützung zusätzlicher Codecs bietet Android 8.0 eine für Nutzer sichtbare Einstellung zum Deaktivieren von Bluetooth-Audio-Codecs in High-Definition (HD). Ein Nutzer kann HD-Codecs deaktivieren, indem er zu Einstellungen > Verbundene Geräte > Bluetooth geht, auf das Zahnradsymbol neben dem Senkengerät tippt und das Kästchen HD-Audio deaktiviert.
Gerätehersteller, die die Einstellungen anpassen, sollten Nutzern die Möglichkeit geben, HD-Codecs zu deaktivieren.
Nachrichten
Über Bluetooth können Nutzer SMS-Nachrichten auf einem Remote-Gerät lesen, durchsuchen und verfassen. Nutzer verwenden diese Funktion häufig, wenn sie ein Smartphone mit einem Infotainmentsystem im Fahrzeug verbinden.
Telefonie
Mit Bluetooth-Telefoniediensten können Nutzer Anrufe streamen und Kontakte von einem Smartphone mit einem anderen Bluetooth-Gerät synchronisieren. Nutzer verwenden diese Funktionen häufig für Freisprechanrufe während der Fahrt.
Unter Android 8.0 unterstützt Bluetooth In-Band-Klingeltöne. Wenn ein über Bluetooth verbundenes Smartphone einen eingehenden Anruf empfängt, wird der Klingelton auf dem Sink wiedergegeben. Aktivieren Sie den In-Band-Klingelton in den Einstellungen > System > Entwickleroptionen, indem Sie den Schalter In-Band-Klingeln aktivieren auf „Ein“ stellen.
Bluetooth-Funktionen
Zur Implementierung der Bluetooth-Dienste unterstützt der Bluetooth-Stack eine Vielzahl von Profilen und Funktionen.
Bluetooth-Profile
Folgende Profile sind für Bluetooth verfügbar:
Funktion | Android-Version | |||||
---|---|---|---|---|---|---|
Name | Beschreibung | 6.0 | 7 | 7.1 | 7.1.2 | 8.0 |
SAP | SIM Access Profile | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
KARTE | Message Access Profile für SMS | 1,9 | 1,9 | 1,9 | 1,9 | 1,9 |
OPP | Object Push-Profil | 1,1 | 1,1 | 1,1 | 1,1 | 1,9 |
OBEX über L2CAP | OBject EXchange over Logical Link Control and Adaptation Protocol | Ja | Ja | Ja | Ja | Ja |
HFP-Audio-Gateway | Hands-Free Profile | 1,6 | 1,6 | 1.7 | 1.7 | 1.7 |
HSP | Headset-Profil | 1,9 | 1,9 | 1,9 | 1,9 | 1,9 |
A2DP | Advanced Audio Distribution Profile | 1,9 | 1,9 | 1,9 | 1,9 | 1,9 |
AVRCP | Audio/Video Remote Control Profile | 1.3 | 1.3 | 1.3 | 1.3 | 1,4 |
HID | Human Interface Device-Profil | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
PBAP | Phone Book Access Profile | 1.1.1 | 1.1.1 | 1.1.1 | 1.1.1 | 1,9 |
HDP | Gesundheitsgeräteprofil | 1.0 | 1.0 | 1,1 | 1,1 | 1,1 |
SPP | Serial Port Profile | 1,9 | 1,9 | 1,9 | 1,9 | 1,9 |
PAN / BNEP | Personal Area Networking Profile / Bluetooth-Netzwerk Encapsulation Protocol | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
DIP | Geräte-ID-Profil | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
HOGP 1.0 | HID über GATT | Ja | Ja | Ja | Ja | Ja |
HD Audio | Weitere Informationen finden Sie unter Erweiterte Audio-Codecs. Die Implementierung hängt von den Gerätefunktionen ab, sowohl auf der Quelle als auch auf dem Senke. | Nein | Nein | Nein | Nein | Ja |
Bluetooth Low Energy-Funktionen
Diese Funktionen sind für BLE verfügbar:
Funktion | Android-Version | ||||
---|---|---|---|---|---|
Name | 6.0 | 7 | 7.1 | 7.1.2 | 8.0 |
Sichere BR/EDR-Verbindungen | 4,1 | 4,1 | 4,1 | 4,1 | 5 |
Datenschutz für Strafverfolgungsbehörden | 4.2 | 4.2 | 4.2 | 4.2 | 5 |
Sichere Verbindungen für Strafverfolgungsbehörden | 4.2 | 4.2 | 4.2 | 4.2 | 5 |
Erweiterungen für Datenpakete | 4.2 | 4.2 | 4.2 | 4.2 | 5 |
32-Bit-UUIDs | Ja | Ja | Ja | Ja | Ja |
Dual-Modus LE-Zentralgerät/Peripheriegerät | Ja | Ja | Ja | Ja | Ja |
LE-Peripheriemodus | Ja | Ja | Ja | Ja | Ja |
Google HCI-Anforderungen | Ja | Ja | Ja | Ja | Ja |
LE-verbindungsorientierte Kanäle | Nein | Nein | Nein | Nein | Nein |