Samochody nowej generacji obsługują wiele ekranów, z których niektóre mogą być obsługiwane przez Androida w celu wyświetlania bogatych treści. Na tej stronie opisaliśmy kluczowe elementy integracji tablicy rozdzielczej i innych wyświetlaczy z systemem IVI Automotive na Androida.
Wyświetlacze zewnętrzne w Androidzie
Android 10 używa interfejsu API android.app.Presentation do obsługi wyświetlaczy zewnętrznych. Prezentacja to unikalny dialog, którego celem jest prezentowanie treści na drugim wyświetlaczu. Prezentacja jest powiązana z docelowym elementem wyświetlania w momencie jej utworzenia i konfiguruje kontekst oraz konfigurację zasobów zgodnie z danymi wyświetlania.
Wyświetlacz klastra przyrządów
Interfejs Presentation API wystarcza do wyświetlania typowego wyświetlacza typu instrumentu, który ma te wartości dozwolone:
Interfejs Presentation API nie wymaga:
- Oddzielny ruch audio.
- Aby uruchomić całą aktywność lub aplikację.
- Aby uwzględnić jednoczesne dane wejściowe użytkowników.
- Obsługa zdarzeń dotknięcia.
Więcej informacji o używaniu wielu wyświetlaczy znajdziesz w artykule Omówienie wielu wyświetlaczy.
Warunek wstępny: przyda się pewna znajomość poprzednich wersji interfejsu WindowManager na Androida.
Obsługiwane typy treści
Niektóre pojazdy mogą nie chcieć, by Android bezpośrednio rysował grafikę grupy przyrządów, ale nadal chcą wyświetlać informacje, takie jak szczegółowe wskazówki dojazdu czy tytuł muzyki. Android może wysyłać takie dane na kilka sposobów. Urządzenie z Androidem może wysyłać treści z instrumentu w postaci:
- na podstawie metadanych, np. wysyłanie wiadomości za pomocą usługi CAN przez
CarVendorExtensionManager
lubVehicleNetworkService
; System klastra instrumentalnego musi tworzyć odpowiednie grafiki na podstawie metadanych. - Grafika na wyświetlaczu fizycznym lub wirtualnym. Wyświetlacz może być wyświetlaczem dedykowanym w grupie wskaźników lub częścią w pełni graficznego wyświetlacza grupy wskaźników.
Przykład architektury sprzętowej wyświetlacza z urządzeniami graficznymi:
Rysunek 2. Przykładowy wyświetlacz grup przyrządów z opartym na grafice systemem Android Automotive.
System operacyjny odpowiedzialny za bezpieczeństwo (odpowiadający za renderowanie tablicy rozdzielczej) i Android mogą znajdować się na tym samym wielordzeniowym SoC (np. dedykowany Cortex-R do systemu operacyjnego w czasie rzeczywistym i Cortex-A do Androida). Interfejs może być Ethernet AVB (Audio Video Bridge), LVDS lub HDMI. W Androidzie klaster instrumentów graficznych można połączyć jako wirtualny wyświetlacz, ukrywając architekturę sprzętową za implementacją Display HAL.
Ograniczenia dotyczące tylnego siedzenia
Aby zapewnić rozrywkę na tylnym siedzeniu, interfejs Presentation API ma te ograniczenia:
- Nie można wyświetlić całej aktywności (prezentacja jest dialogiem).
- Dostępne jest tylko 1 oznaczenie dźwięku.
- Brak jednoczesnych użytkowników.
- Brak zdarzeń dotykowych na wyświetlaczu zewnętrznym (wymaga oddzielnego przepływu danych).