Bluetooth-Dienste

Über Bluetooth können Geräte Daten übertragen, die für interaktive Dienste wie Audio, Messaging und Telefonie verwendet werden können. Die für verschiedene Dienste verwendeten Bluetooth-Profile finden Sie unter include/hardware/bluetooth.h.

Audio

Über eine Bluetooth-Verbindung können Nutzer Audio auf Bluetooth-fähigen Geräten streamen. Bei den meisten Audioanwendungen ist das Android-Gerät die Quelle und das Rendering-Gerät, z. B. ein Lautsprecher oder ein Headset, der Abnehmer.

Absolute Lautstärkeregelung

Unter Android 6.0 und höher kann eine Quelle über den Android-Bluetooth-Stack ein absolutes Lautstärkeniveau festlegen, sodass Nutzer die Audiolautstärke genau steuern können. Das Quellgerät sendet nicht gedämpfte Audio- und Lautstärkeinformationen an den Empfänger. Der Sink verstärkt dann das Audiosignal gemäß den Lautstärkeinformationen, damit Nutzer die Wiedergabelautstärke korrekt hören.

Das Quellgerät kann auch Benachrichtigungen zur Lautstärke registrieren. Wenn die Lautstärke über die Steuerelemente am Sink geändert wird, sendet der Sink eine Benachrichtigung an die Quelle. So können die Lautstärkeinformationen der Quelle auf einer Benutzeroberfläche korrekt angezeigt werden.

Die absolute Lautstärkeregelung ist standardmäßig aktiviert. Wenn Nutzer die absolute Lautstärkeregelung deaktivieren möchten, können sie zu Einstellungen > System > Entwickleroptionen gehen und die Option Absolute Lautstärkeregelung deaktivieren aktivieren.

Erweiterte Audio-Codecs

Unter Android 8.0 können Geräte, die das Advanced Audio Distribution Profile (A2DP) verwenden, zusätzliche Audiocodecs unterstützen. Der Bluetooth-Stack unterstützt die Audio-Codec-Verhandlung, wenn Geräte eine Verbindung zu einem Remote-Audio-Sink herstellen. Bei dieser Verhandlung wird der beste Codec ausgewählt, der sowohl vom Sender als auch vom Sink unterstützt wird, um Audio in hoher Qualität bereitzustellen. Nach der Auswahl wird der gesamte Audiostream über den ausgewählten Encoder geleitet und dann an den Sink gesendet.

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är-Blobs für einige proprietäre Audiocodecs erwerben. Neben SBC unterstützt Android 8.0 die folgenden Codecs:

  • 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 enthält einen Encoder für den LDAC-Codec von Sony. Daher ist keine separate Lizenz oder ein separater Blob von Sony erforderlich. Wenn du den LDAC-Codec in deinem Gerät einbinden möchtest, musst du dich bei Sony registrieren und den LDAC-Zertifizierungsprozess durchlaufen.

Auf der LDAC-Zertifizierungswebsite finden Sie Dokumentationen zu LDAC, z. B. Spezifikations- und Betriebshandbücher. Die LDAC-Website bietet außerdem Validierungs- und Interoperabilitätstests für Smartphones und Tablets. Senden Sie bestandene Testergebnisse an Sony, um die LDAC-Zertifizierung abzuschließen.

UI-Funktionen

Neben der zusätzlichen Codec-Unterstützung bietet Android 8.0 eine Einstellung für Nutzer, mit der sich HD-Bluetooth-Audiocodecs (High Definition) deaktivieren lassen.

  1. Gehen Sie zu Einstellungen > Verbundene Geräte > Bluetooth.
  2. Tippe auf das Zahnradsymbol neben dem Sink, für den du Codecs deaktivieren möchtest.
  3. Entfernen Sie das Häkchen bei HD-Audio.

Gerätehersteller, die die Einstellungen anpassen, sollten Nutzern die Möglichkeit bieten, HD-Codecs zu deaktivieren.

Nachrichten

Mit Messaging über Bluetooth können Nutzer SMS-Nachrichten von einem Remote-Gerät lesen, durchsuchen und schreiben. Diese Funktion wird häufig verwendet, um ein Smartphone mit einem Infotainmentsystem im Fahrzeug zu verbinden.

Telefonie

Mit Bluetooth-Telefoniediensten können Nutzer Anrufe streamen und Kontakte von einem Smartphone mit einem anderen Bluetooth-Gerät synchronisieren. Diese Funktionen werden häufig für Anrufe per Sprachbefehl beim Autofahren verwendet.

Unter Android 8.0 wird über Bluetooth ein In-Band-Klingelton unterstützt. Wenn ein über Bluetooth verbundenes Smartphone einen Anruf empfängt, wird der Klingelton über den Küchen- bzw. Badezimmerspiegel abgespielt. Aktivieren Sie den In-Band-Klingelton unter Einstellungen > System > Entwickleroptionen, indem Sie die Option In-Band-Klingeln aktivieren aktivieren.

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-Zugriffsprofil 1,1 1,1 1,1 1,1 1,1
MAP Nachrichtenzugriffsprofil für SMS 1,9 1,9 1,9 1,9 1,9
OPP Objekt-Push-Profil 1,1 1,1 1,1 1,1 1,9
OBEX over L2CAP OBject EXchange over Logical Link Control and Adaptation Protocol Ja Ja Ja Ja Ja
HFP-Audio-Gateway Profil für Sprachbedienung 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 Profile 1.0 1.0 1.0 1.0 1.0
PBAP Telefonbuchzugriffsprofil 1.1.1 1.1.1 1.1.1 1.1.1 1,9
HDP Profil für Gesundheitsgeräte 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 Network 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 over GATT Ja Ja Ja Ja Ja
HD-Audio1 Siehe oben „Erweiterte Audiocodecs“ Nein Nein Nein Nein Ja

1 Die Implementierung von HD-Audio hängt von den Gerätefunktionen ab, sowohl von der Quelle als auch vom Ziel.

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
LE-sichere Verbindungen 4.2 4.2 4.2 4.2 5
Datenpaketerweiterungen 4.2 4.2 4.2 4.2 5
32-Bit-UUIDs Ja Ja Ja Ja Ja
Dual-Mode LE-Zentrale/Peripheriegerät Ja Ja Ja Ja Ja
LE-Peripheriemodus Ja Ja Ja Ja Ja
HCI-Anforderungen von Google Ja Ja Ja Ja Ja
LE-Verbindungsorientierte Kanäle Nein Nein Nein Nein Nein