Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


...

Requirements for standardized access to vehicle data from android applications within a built-in AOSP-based OS

NameShort DescripitionTopicReference
Usable by 3rd Party AppsAll vehicle properties must be usable by apps installed from the app store.SYSTEM vs. VENDOR propertieshttps://cs.android.com/android/platform/superproject/main/+/main:hardware/interfaces/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehiclePropertyGroup.aidl
Consistent cross-OEM IDsAll vehicle properties must have consistent ID regardless of the OEM.
https://cs.android.com/android/platform/superproject/main/+/main:packages/services/Car/car-lib/src/android/car/VehiclePropertyIds.java
Extensible outside the platform

Vehicle properties should be extendable outside the AOSP platform code.



Permission per vehicle property

Each vehicle property must be protected by a specific permission to enable fine grain access.


https://cs.android.com/android/platform/superproject/main/+/main:packages/services/Car/car-lib/src/android/car/hardware/property/VehicleVendorPermission.java
Permission per read/write

Read and write access must have different permissions to enable read or write-only.



OEM defined access

OEM must be able to define which app may get access to which properties (read/write)


https://developer.android.com/guide/topics/permissions/overview
Dynamic permission grants

OEM must be able to grant or revoke access per app and vehicle property over the lifetime of the vehicle

Runtime, Dangerous permissions without user interaction
Consistent VSS based mapping

All vehicle IDs should be deterministically maped to VSS nodes to enable seamless integration with any VSS based communication middleware or similar.



Frequency / Sample Rate

Applications must be able to subscribe for updates to continuous properties.

Sample rate range must be queryable.

(Optional, TBD) OEM must be able to dynamically define which apps can get what sample rate range


https://developer.android.com/reference/android/car/hardware/CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS

https://developer.android.com/reference/android/car/hardware/CarPropertyConfig#getMaxSampleRate()

https://developer.android.com/reference/android/car/hardware/CarPropertyConfig#getMinSampleRate()