על סמך המאפיין VEHICLE_PROPERTY_HW_KEY_INPUT
של Vehicle HAL, שמוגדר בקובץ hardware/libhardware/include/hardware/vehicle.h
, מערכת Android Automotive מטפלת בקלט מפתחות מרכיבים שכוללים מתגים מרחוק של הגה, לחצני חומרה ולוחות מגע.
לדוגמה, שליחת אירוע מפתח ברשת CAN bus:
איור 1. אירועים מרכזיים של Android Automotive דרך תהליך CANbus.
נתוני אירועים מרכזיים
הנתונים הבאים מצורפים לכל אירוע מרכזי ב-HAL של הרכב:
- פעולת קלט (למעלה/למטה):
VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0, VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
- קוד מפתח שממופה למפתחות Android בהטמעה של שותף של Vehicle HAL.
- מסך היעד (מרכזי/לוח מחוונים):
VEHICLE_DISPLAY_MAIN = 0, VEHICLE_DISPLAY_INSTRUMENT_CLUSTER = 1,
שירות CarInputService
משמש לטיפול בקלט המפתחות באשכול הכלים (אותו שירות משמש לטיפול בקלט הרגיל ברכב). אירועים מרכזיים מועברים אל InstrumentClusterRenderingService
:
public class MyClusterRenderingService extends InstrumentClusterRenderingService { ... @Override protected void onKeyEvent(KeyEvent keyEvent) { /* Inject to Presentation? */ } }