Usługi Bluetooth

Urządzenia mogą przesyłać przez Bluetooth dane, które można wykorzystać w usługach interaktywnych, takich jak audio, wiadomości i telefonia. Profile Bluetooth używane w różnych usługach znajdziesz w include/hardware/bluetooth.h.

Audio

Połączenie Bluetooth umożliwia użytkownikom przesyłanie strumieniowe dźwięku na urządzeniach obsługujących Bluetooth. W większości przypadków użycia dźwięku urządzenie z Androidem jest źródłem, a urządzenie odtwarzające, takie jak głośnik lub słuchawki, jest odbiornikiem.

Sterowanie głośnością bezwzględną

W Androidzie 6.0 i nowszym stos Bluetootha w Androidzie umożliwia źródłu ustawienie bezwzględnej głośności, co daje użytkownikom dokładną kontrolę nad głośnością dźwięku. Urządzenie źródłowe wysyła do urządzenia docelowego nieosłabiony dźwięk i informacje o głośności. Urządzenie wyjściowe wzmacnia dźwięk zgodnie z informacjami o głośności, dzięki czemu użytkownicy słyszą dźwięk o odpowiedniej głośności.

Urządzenie źródłowe może też rejestrować powiadomienia o głośności. Gdy zmiany głośności są wprowadzane za pomocą elementów sterujących na urządzeniu wyjściowym, wysyła ono powiadomienie do urządzenia źródłowego. Dzięki temu źródło może dokładnie wyświetlać informacje o głośności w interfejsie użytkownika.

Sterowanie głośnością bezwzględną jest domyślnie włączone. Użytkownik może wyłączyć sterowanie głośnością bezwzględną w sekcji Ustawienia > System > Opcje programisty, klikając przełącznik Wyłącz głośność bezwzględną.

Zaawansowane kodeki audio

W Androidzie 8.0 urządzenia korzystające z profilu zaawansowanej dystrybucji dźwięku (A2DP) mogą obsługiwać dodatkowe kodeki audio. Stos Bluetooth obsługuje negocjacje kodeka audio, gdy urządzenia łączą się ze zdalnym odbiornikiem audio. W ramach negocjacji wybierany jest najlepszy kodek obsługiwany zarówno przez nadawcę, jak i odbiorcę, aby zapewnić wysoką jakość dźwięku. Po wybraniu urządzenia kieruje ono cały dźwięk przez wybrany koder, a następnie wysyła go do odbiornika.

Implementacja

Urządzenia z Androidem 8.0 obsługujące A2DP automatycznie zyskują dodatkową obsługę kodeków. Producenci urządzeń mogą potrzebować oddzielnych licencji i plików binarnych w przypadku niektórych kodeków audio objętych prawami własności. Oprócz kodeka SBC Android 8.0 obsługuje te kodeki:

  • AAC
  • aptX
  • aptX HD
  • LDAC

Producenci urządzeń mogą określać, które kodeki mają być używane w pierwszej kolejności. Ustaw priorytety kodeków, zmieniając te wartości w res/values/config.xml:

  <!-- 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>

Certyfikat LDAC

Projekt Android Open Source Project (AOSP) zawiera koder kodeka LDAC firmy Sony, więc nie jest potrzebna osobna licencja ani plik binarny od Sony. Aby zintegrować kodek LDAC z urządzeniem, zarejestruj się w Sony i postępuj zgodnie z procesem certyfikacji LDAC.

W witrynie certyfikacyjnej LDAC znajdziesz dokumentację dotyczącą LDAC, np. specyfikację i podręczniki obsługi. Na stronie LDAC znajdziesz też testy weryfikacyjne i testy interoperacyjności dla urządzeń mobilnych i tabletów. Wyślij wyniki testu do firmy Sony, aby uzyskać certyfikat LDAC.

Funkcje interfejsu

Oprócz dodatkowej obsługi kodeków Android 8.0 udostępnia użytkownikom ustawienie, które umożliwia wyłączenie kodeków audio Bluetooth w wysokiej rozdzielczości (HD). Użytkownik może wyłączyć kodeki HD, wybierając Ustawienia > Połączone urządzenia > Bluetooth, klikając ikonę koła zębatego obok urządzenia wyjściowego i odznaczając pole wyboru Dźwięk HD.

Producenci urządzeń, którzy dostosowują Ustawienia, powinni umożliwić użytkownikom wyłączanie kodeków HD.

Wiadomości

Wiadomości przez Bluetooth umożliwiają użytkownikom czytanie, przeglądanie i pisanie SMS-ów na urządzeniu zdalnym. Użytkownicy często korzystają z tej funkcji, gdy podłączają telefon do systemu multimedialno-rozrywkowego w samochodzie.

Połączenia telefoniczne

Usługi telefoniczne Bluetooth umożliwiają użytkownikom przesyłanie strumieniowe połączeń i synchronizowanie kontaktów z telefonu na inne urządzenie Bluetooth. Użytkownicy często korzystają z tych funkcji podczas prowadzenia samochodu, aby wykonywać połączenia bez użycia rąk.

W Androidzie 8.0 Bluetooth obsługuje dzwonek w paśmie. Gdy telefon połączony przez Bluetootha odbiera połączenie przychodzące, dzwonek jest odtwarzany na zlewie. Włącz dzwonek w paśmie w Ustawieniach > System > Opcje programisty, ustawiając przełącznik Włącz dzwonek w paśmie w pozycji włączonej.

Funkcje Bluetootha

Aby wdrożyć usługi Bluetooth, stos Bluetooth obsługuje różne profile i funkcje.

Profile Bluetooth

Dostępne są te profile Bluetooth:

Funkcja Wersja Androida
Nazwa Opis 6.0 7,0 7.1 7.1.2 z Androidem 8.0
SAP Profil dostępu do karty SIM 1.1 1.1 1.1 1.1 1.1
MAPA Profil dostępu do wiadomości SMS 1.2 1.2 1.2 1.2 1.2
OPP Object Push Profile 1.1 1.1 1.1 1.1 1.2
OBEX over L2CAP OBject EXchange over Logical Link Control and Adaptation Protocol Tak Tak Tak Tak Tak
Brama audio HFP Profil zestawu słuchawkowego 1,6 1,6 1.7 1.7 1.7
HSP Profil zestawu słuchawkowego 1.2 1.2 1.2 1.2 1.2
A2DP Profil zaawansowanej dystrybucji audio 1.2 1.2 1.2 1.2 1.2
AVRCP Profil zdalnego sterowania audio/wideo 1.3 1.3 1.3 1.3 1,4
HID Profil urządzenia interfejsu człowiek-maszyna 1,0 1,0 1,0 1,0 1,0
PBAP Profil dostępu do książki telefonicznej 1.1.1 1.1.1 1.1.1 1.1.1 1.2
HDP Profil urządzenia do monitorowania stanu zdrowia 1,0 1,0 1.1 1.1 1.1
SPP Profil portu szeregowego 1.2 1.2 1.2 1.2 1.2
PAN / BNEP Profil sieci osobistej / sieć Bluetooth Protokół enkapsulacji 1,0 1,0 1,0 1,0 1,0
DIP Profil identyfikatora urządzenia 1.3 1.3 1.3 1.3 1.3
HOGP 1.0 HID over GATT Tak Tak Tak Tak Tak
Dźwięk HD Zobacz Zaawansowane kodeki audio. Wdrożenie zależy od możliwości urządzenia, zarówno źródłowego, jak i odbiorczego. Nie Nie Nie Nie Tak

Funkcje Bluetooth Low Energy

W przypadku BLE dostępne są te funkcje:

Funkcja Wersja Androida
Nazwa 6.0 7,0 7.1 7.1.2 z Androidem 8.0
Bezpieczne połączenia BR/EDR 4.1 4.1 4.1 4.1 5,0
Prywatność LE 4.2 4.2 4.2 4.2 5,0
Bezpieczne połączenia LE 4.2 4.2 4.2 4.2 5,0
Rozszerzenia pakietów danych 4.2 4.2 4.2 4.2 5,0
32-bitowe identyfikatory UUID Tak Tak Tak Tak Tak
Tryb podwójny LE centralny/peryferyjny Tak Tak Tak Tak Tak
Tryb urządzenia peryferyjnego LE Tak Tak Tak Tak Tak
Wymagania dotyczące HCI Google Tak Tak Tak Tak Tak
Kanały LE zorientowane na połączenie Nie Nie Nie Nie Nie