إدخال المفتاح

استنادًا إلى سمة Vehicle HAL‏ VEHICLE_PROPERTY_HW_KEY_INPUT، المحدّدة في hardware/libhardware/include/hardware/vehicle.h، يعالج نظام التشغيل Android Automotive إدخال المفاتيح من عناصر تشمل مفاتيح التحكّم عن بُعد في التوجيه والأزرار المزوّدة بأجهزة وأجهزة لوحية تعمل باللمس.

على سبيل المثال، إرسال حدث رئيسي عبر شبكة ناقل بيانات CAN:

الحدث الرئيسي

الشكل 1: أحداث Android Automotive الرئيسية على مسار CANbus

بيانات الأحداث الرئيسية

يتم إرفاق البيانات التالية بكل حدث رئيسي في Vehicle HAL:

  • إدخال الإجراء (أعلى/أسفل):
    VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0,
    VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
  • رمز مفتاح تم ربطه بمفاتيح Android في عملية تنفيذ شريك لواجهة 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? */ }
}