The Vehicle Hardware Abstraction Layer (VHAL) interface defines the properties OEMs can implement and contains property metadata. For example, whether a property is an integer and which change modes are allowed. The VHAL interface is based on accessing (reading, writing, and subscribing) a property, which is an abstraction for a specific function.
- In Android 13 and higher, VHAL migrated to AIDL at
- In Android 12 and lower, VHAL is defined with HIDL language in
CarService and Android native components support HIDL and AIDL backend and prefer the AIDL backend when it's available.
|For existing HIDL VHAL implementations, migrate to the newer AIDL interface.
|For new VHAL implementations, use the AIDL interface.
To learn more about the VHAL, see these pages:
- VHAL Interface
- Property Configurations
- Supported System Properties
- Special Properties
- SEAT and STEERING_WHEEL Properties
- ADAS Properties
- Reference Implementation
- Debug the VHAL
- Use VHAL with the Native Client
- HIDL VHAL Migration Guide
- HIDL VHAL Interface