Bluetooth

Moduł Bluetooth to opcjonalny moduł Mainline wprowadzony w Androidzie 13. W Androidzie 16 i nowszych wersjach moduł można aktualizować. Zawiera on w pełni certyfikowany stos hosta Bluetooth w trybie podwójnym, dzięki czemu urządzenia z Androidem mogą obsługiwać zarówno klasyczne funkcje Bluetooth, jak i Bluetooth Low Energy (BLE).

Głównym celem modułu Bluetooth jest zapewnienie producentom urządzeń, użytkownikom i deweloperom aplikacji lepszej jakości Bluetooth przez:

  • szybsze dostarczanie aktualizacji z nowymi funkcjami, poprawkami błędów, ulepszeniami interoperacyjności i poprawkami zabezpieczeń szybko i regularnie, niezależnie od cyklu wydawania systemu operacyjnego Android;

  • zmniejszenie fragmentacji i zapewnienie spójności w całym ekosystemie Androida;

  • usprawnienie prac deweloperów przez dostarczanie modułów Bluetooth Mainline zweryfikowanych przez Androida i unikanie częstego ponownego bazowania, co zmniejsza nakłady na rozwój i testowanie.

Format pakietu

Moduł Bluetooth używa formatu APEX. Pakiet com.google.android.bt zawiera plik APK Bluetooth zdefiniowany w packages/modules/Bluetooth/android/app, wbudowaną bibliotekę libbluetooth_jni.so, interfejsy API w packages/modules/Bluetooth/framework/java/android/bluetooth oraz interfejsy HIDL.

Granica modułu

Ten schemat przedstawia granicę modułu Bluetooth:

Granica modułu Bluetooth

Rysunek 1. Granica modułu Bluetooth.

Zależności

Moduł Bluetooth ma te zależności:

  • przychodzące i wychodzące użycie interfejsu API @hide;
  • biblioteka wymagana przez plik APK Bluetooth (libbluetooth.so);
  • implementacja HAL od dostawcy chipsetu Bluetooth;
  • Android Audio Framework do strumieniowania dźwięku;
  • telefonia Androida do połączeń telefonicznych;
  • thethering w Androidzie do osobistej sieci Bluetooth (PAN).