Bluetooth

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Bluetooth to opcjonalny moduł Mainline począwszy od systemu Android 13. Moduł Bluetooth Mainline ma na celu zapewnienie spójnej, wysokiej jakości obsługi Bluetooth wszystkim użytkownikom systemu Android.

Motywacja

Główną motywacją stojącą za modułem Bluetooth jest zapewnienie wysokiej jakości doświadczeń partnerom, użytkownikom i twórcom aplikacji. Osiągniemy to na kilka kluczowych sposobów:

  1. Wysyłaj aktualizacje szybciej i częściej dzięki nowym funkcjom, poprawkom błędów i interoperacyjności oraz poprawkom zabezpieczeń.
  2. Zmniejszenie powtarzalnej pracy dla partnerów
    1. Zmniejszony narzut związany z coroczną zmianą bazy kodu.
    2. Zmniejszone koszty wdrażania OTA na starszych urządzeniach.
  3. Zmniejsz fragmentację i stwórz spójne środowisko dla twórców aplikacji i użytkowników
  4. Popraw globalne bezpieczeństwo w ekosystemie Androida. Duża część luk w zabezpieczeniach Androida dotyczy Bluetooth..

Format pakietu

Pakiet to APEX zawierający Bluetooth APK (obecnie zdefiniowany w packages/modules/Bluetooth/android/app ), nasze natywne biblioteki ( libbluetooth.so i libbluetooth_jni.so ), nasze API (w packages/modules/Bluetooth/framework/java/android/bluetooth ) i nasze interfejsy HIDL.

Granica modułu

Podstawowa architektura modułu Bluetooth

Rysunek 1. Granica modułu Bluetooth

Przenosimy wszystkie nasze istniejące repozytoria do jednego w system/bt . Rysunek 1 przedstawia aktualne katalogi, które będą składać się na nasz moduł.

Zależności

Moduł Bluetooth ma zależności od:

  • Przychodzące i wychodzące @hide API, które zostaną wyczyszczone
  • Biblioteki wymagane dla APK Bluetooth, libbluetooth.so i libbluetooth_jni.so