hardware/libhardware/include/hardware/vehicle.h
dosyasında tanımlanan VEHICLE_PROPERTY_HW_KEY_INPUT
Araç HAL özelliğini temel alan Android Automotive, direksiyon uzaktan kumanda anahtarları, donanım düğmeleri ve dokunmatik panelleri içeren öğelerden gelen anahtar girişini yönetir.
Örneğin, bir CAN veri yolu ağı üzerinden önemli bir olayın gönderilmesi:
Şekil 1. CANbus akışındaki Android Automotive önemli olayları.
Önemli etkinlik verileri
Araç HAL'indeki her önemli olaya aşağıdaki veriler eklenir:
- Giriş eylemi (yukarı/aşağı):
VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0, VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
- Araç HAL'inin iş ortağı uygulamasında Android anahtarlarıyla eşlenen anahtar kodu.
- Hedef ekranı (ana/gösterge paneli):
VEHICLE_DISPLAY_MAIN = 0, VEHICLE_DISPLAY_INSTRUMENT_CLUSTER = 1,
Gösterge panelindeki anahtar giriş işleme, CarInputService
kullanır (aynı servis, araçtaki düzenli giriş işleme için de kullanılır). Önemli olaylar InstrumentClusterRenderingService
yayılır:
public class MyClusterRenderingService extends InstrumentClusterRenderingService { ... @Override protected void onKeyEvent(KeyEvent keyEvent) { /* Inject to Presentation? */ } },
hardware/libhardware/include/hardware/vehicle.h
dosyasında tanımlanan VEHICLE_PROPERTY_HW_KEY_INPUT
Araç HAL özelliğini temel alan Android Automotive, direksiyon uzaktan kumanda anahtarları, donanım düğmeleri ve dokunmatik panelleri içeren öğelerden gelen anahtar girişini yönetir.
Örneğin, bir CAN veri yolu ağı üzerinden önemli bir olayın gönderilmesi:
Şekil 1. CANbus akışındaki Android Automotive önemli olayları.
Önemli etkinlik verileri
Araç HAL'indeki her önemli olaya aşağıdaki veriler eklenir:
- Giriş eylemi (yukarı/aşağı):
VEHICLE_HW_KEY_INPUT_ACTION_DOWN = 0, VEHICLE_HW_KEY_INPUT_ACTION_UP = 1,
- Araç HAL'inin iş ortağı uygulamasında Android anahtarlarıyla eşlenen anahtar kodu.
- Hedef ekranı (ana/gösterge paneli):
VEHICLE_DISPLAY_MAIN = 0, VEHICLE_DISPLAY_INSTRUMENT_CLUSTER = 1,
Gösterge panelindeki anahtar giriş işleme, CarInputService
kullanır (aynı servis, araçtaki düzenli giriş işleme için de kullanılır). Önemli olaylar InstrumentClusterRenderingService
yayılır:
public class MyClusterRenderingService extends InstrumentClusterRenderingService { ... @Override protected void onKeyEvent(KeyEvent keyEvent) { /* Inject to Presentation? */ } }