Wejście klucza, wejście klucza

W oparciu o właściwość Vehicle HAL VEHICLE_PROPERTY_HW_KEY_INPUT zdefiniowaną w hardware/libhardware/include/hardware/vehicle.h Android Automotive obsługuje wprowadzanie kluczowych danych z elementów obejmujących zdalne przełączniki układu kierowniczego, przyciski sprzętowe i panele dotykowe.

Na przykład wysłanie kluczowego zdarzenia przez sieć magistrali CAN:

Ważne wydarżenie

Rysunek 1. Kluczowe zdarzenia Android Automotive w przepływie magistrali CANbus.

Kluczowe dane dotyczące wydarzeń

Do każdego kluczowego zdarzenia w HAL pojazdu dołączone są następujące dane:

  • Akcja wejściowa (w górę/w dół):
    VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0,
    VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
    
  • Kod klucza zmapowany na klucze systemu Android w partnerskiej implementacji pojazdu HAL.
  • Wyświetlacz docelowy (główny/zestaw wskaźników):
    VEHICLE_DISPLAY_MAIN               = 0,
    VEHICLE_DISPLAY_INSTRUMENT_CLUSTER = 1,
    

Do obsługi kluczowych danych wejściowych w zestawie wskaźników wykorzystywana jest CarInputService (ta sama usługa służy do zwykłej obsługi danych wejściowych w pojeździe). Kluczowe zdarzenia są propagowane do InstrumentClusterRenderingService :

public class MyClusterRenderingService extends
InstrumentClusterRenderingService {
    ...
    @Override protected void onKeyEvent(KeyEvent keyEvent) { /* Inject to
    Presentation? */ }
}
,

W oparciu o właściwość Vehicle HAL VEHICLE_PROPERTY_HW_KEY_INPUT zdefiniowaną w hardware/libhardware/include/hardware/vehicle.h Android Automotive obsługuje wprowadzanie kluczowych danych z elementów obejmujących zdalne przełączniki układu kierowniczego, przyciski sprzętowe i panele dotykowe.

Na przykład wysłanie kluczowego zdarzenia przez sieć magistrali CAN:

Ważne wydarżenie

Rysunek 1. Kluczowe zdarzenia Android Automotive w przepływie magistrali CANbus.

Kluczowe dane dotyczące wydarzeń

Do każdego kluczowego zdarzenia w HAL pojazdu dołączone są następujące dane:

  • Akcja wejściowa (w górę/w dół):
    VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0,
    VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
    
  • Kod klucza zmapowany na klucze systemu Android w partnerskiej implementacji pojazdu HAL.
  • Wyświetlacz docelowy (główny/zestaw wskaźników):
    VEHICLE_DISPLAY_MAIN               = 0,
    VEHICLE_DISPLAY_INSTRUMENT_CLUSTER = 1,
    

Do obsługi kluczowych danych wejściowych w zestawie wskaźników wykorzystywana jest CarInputService (ta sama usługa służy do zwykłej obsługi danych wejściowych w pojeździe). Kluczowe zdarzenia są propagowane do InstrumentClusterRenderingService :

public class MyClusterRenderingService extends
InstrumentClusterRenderingService {
    ...
    @Override protected void onKeyEvent(KeyEvent keyEvent) { /* Inject to
    Presentation? */ }
}