Przewodnik po integracji biblioteki interfejsu użytkownika samochodu

Zestaw narzędzi Car User Interface (UI) zapewnia platformę programistyczną interfejsu użytkownika, dzięki której aplikacje obecne w samochodach (aplikacje Google oraz aplikacje systemowe i dostawcy) mogą osiągnąć:

  • Spójność interfejsu użytkownika/UX systemu informacyjno-rozrywkowego. Spójność własna to zdolność użytkownika do przewidywania sposobu interakcji z systemem informacyjno-rozrywkowym w oparciu o wcześniejsze doświadczenia związane z interakcją z tym samym systemem.

  • Dostosowywanie. Producenci OEM mogą modyfikować wygląd i działanie systemu, aby jak najlepiej zintegrować funkcjonalność z wnętrzem pojazdu i sprzętem.

Aby dowiedzieć się więcej o integracji biblioteki Car UI Library, odwiedź te strony:

Informacje o bibliotece Car UI

Biblioteka Car UI to biblioteka połączona statycznie, która udostępnia zestaw komponentów i zasobów, których możesz użyć do wdrożenia:

  • Aplikacje systemowe i OEM (Gerrit)
  • Aplikacje samochodowe na Androida (AAOS).

Biblioteka ta pełni funkcję:

  • Interfejs API dostosowywania przez:

    • Definiowanie zasobów, które można dostosować, w tym kolorów, wymiarów i elementów do rysowania.
    • Traktowanie zasobów jak API z gwarancjami zgodności wstecznej.
  • Warstwa kompatybilności pomiędzy rozwiązaniem krótkoterminowym przewidzianym w Androidzie 9 i Androidzie 10 a rozwiązaniem długoterminowym, które jest obecnie opracowywane.

Nakładki zasobów

Android zapewnia obecnie kilka sposobów stosowania dostosowań bez konieczności wykonywania dodatkowej pracy w podsystemach i aplikacjach, których dotyczy problem:

  • Nakładki w czasie kompilacji. To dostosowanie jest stosowane podczas tworzenia obrazu systemu Android. Podczas kompilacji wszystkie aplikacje w systemie otrzymują zasoby ze swoich folderów res i folderów overlay zdefiniowanych w docelowych plikach makefile.

  • Dynamiczne nakładki wykonawcze (dynamiczne RRO). Te specjalne pliki APK zawierają tylko zasoby i plik manifestu wskazujący, na który docelowy plik APK mają wpływ. Dynamiczne RRO są kompilowane i wdrażane niezależnie od obrazu systemu i można je włączać i wyłączać. Kiedy system wyszukuje zasoby dla konkretnej aplikacji, sprawdza również, czy RRO jest dla niej ukierunkowane i czy RRO zawiera zasób o tej samej nazwie.

  • Statyczne nakładki wykonawcze (statyczne RRO). Podobnie jak w strukturze dynamicznych RRO, są one zawsze włączone , co oznacza, że ​​nie można ich odinstalować ani zaktualizować bez przeprowadzenia pełnej aktualizacji obrazu systemu. Statyczne RRO służą jako pośrednik między nakładkami czasu kompilacji i dynamicznymi nakładkami środowiska wykonawczego.

Oprócz komponentów interfejsu użytkownika biblioteka Car UI zapewnia mechanizm bezpośredniego nakładania zasobów (statycznie połączonych z każdą aplikacją) na zasoby OEM przy użyciu zestawu statycznych RRO . Producenci OEM muszą udostępnić folder zawierający nakładki zasobów i listę docelowych aplikacji. Podczas kompilacji infrastruktura biblioteki Car UI wykorzystałaby te informacje do wygenerowania jednego statycznego RRO dla każdej docelowej aplikacji.

Komponenty biblioteki interfejsu użytkownika samochodu

Rysunek 1 . Komponenty biblioteki interfejsu użytkownika samochodu

Na obrazku powyżej:

  • Zielony . Dostosowanie zapewniane przez producenta OEM, połączenie zasobów nakładek w czasie kompilacji i w czasie wykonywania.

  • Żółty. Wsparcie zapewniane przez bibliotekę Car UI, w tym nakładane zasoby, komponenty (kod Java) i wsparcie kompilacji w celu wygenerowania niezbędnych RRO.

  • Niebieski. Konfigurowalne elementy docelowe, w tym framework, aplikacje systemowe, aplikacje dostawców i aplikacje GAS, które korzystają z biblioteki Car UI do dostosowywania elementów interfejsu użytkownika.