استنادًا إلى سمة 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? */ } }