支持的系统属性

本页面列出了 VHAL 中支持的系统属性。VHAL 支持的属性必须是下方列表中的系统属性或供应商属性。在 Android 14 及更高版本中,属性定义在 hardware/interfaces/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl 中定义。

属性定义在 AIDL 接口 (android.hardware.automotive.vehicle.property) 中定义,该接口与 VHAL 接口 (android.hardware.automotive.vehicle) 是分开的。VHAL 实现和 VHAL 客户端必须依赖这两个接口。

自动生成的访问模式和更改模式

在 Android 14 及更高版本中,为了支持 VHAL 实现,我们提供了自动生成的 C++ 头文件Java 类文件,其中包含允许对系统属性使用的更改模式或访问模式。供应商 VHAL 实现可以使用这些属性来确保属性配置符合规范。

ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE

使用自适应巡航控制 (ACC) 或预测性巡航控制 (PCC) 时测量的与前车的距离。返回前车最后端点与 ACC 车辆最前端点之间的测量距离,单位为毫米。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32ValueminInt32Value 应为 0。maxInt32Value 应填充距离传感器支持的最大范围。此值应为非负值。

如果未检测到前车(即,没有前车;或与前车相距太远,传感器无法检测到),此属性应返回 StatusCode.NOT_AVAILABLE

如果此属性因 CC 处于停用状态(例如 StatusCode#NOT_AVAILABLE_DISABLED 为 false)而不可用,则必须返回 StatusCode#NOT_AVAILABLE_DISABLED。如果实现了 CRUISE_CONTROL_STATE 且状态设置为 ErrorState 值,则此属性必须返回与 ErrorState 值一致的 StatusCode。例如,如果 CRUISE_CONTROL_STATE 设置为 ErrorState#NOT_AVAILABLE_SPEED_LOW,则此属性必须返回 StatusCode#NOT_AVAILABLE_SPEED_LOW

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:MILLIMETER
版本:Android 14

ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP

ACC 或 PCC 的当前目标时间间隔(以毫秒为单位)。 此属性应指定与前车的目标时间间隔。此时间间隔定义为,从前车的最后端点行驶到 ACC 车辆的最前端点所需的时间。与前车的实际时间间隔可能会高于或低于此值。

应在 configArray 中按升序指定可为目标时间间隔设置的值。所有值都必须为正数。如果该属性可写入,则所有值都必须可写入。如果此属性因 CC 处于停用状态(例如 CRUISE_CONTROL_ENABLED 为 false)而不可用,则必须返回 StatusCode#NOT_AVAILABLE_DISABLED

如果实现了 CRUISE_CONTROL_STATE 且状态设置为 ErrorState 值,则此属性必须返回与 ErrorState 值一致的 StatusCode。例如,如果 CRUISE_CONTROL_STATE 设置为 ErrorState#NOT_AVAILABLE_SPEED_LOW,则此属性必须返回 StatusCode#NOT_AVAILABLE_SPEED_LOW

此属性被定义为 VehiclePropertyAccess.READ_WRITE,但原始设备制造商 (OEM) 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:VehicleUnit:MILLI_SECS
版本:Android 14

ABS_ACTIVE

自动制动系统 (ABS) 处于启用状态。当 ABS 处于启用状态时设置为 true,当 ABS 处于关闭状态时重置为 false。此属性可根据 ABS 系统的实时状态间歇性设置(脉冲式)。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

ANDROID_EPOCH_TIME

采用纪元时间编码的当前日期和时间(以毫秒为单位)。此值表示自世界协调时间 (UTC) 1970 年 1 月 1 日以来经过的毫秒数。

此值表示自世界协调时间 (UTC) 1970 年 1 月 1 日以来经过的毫秒数。 如果 VHAL 支持此属性,CarServices 会向此值执行 WRITE,以向 VHAL 提供 Android 系统的时间。这对于使其他车载系统(仪表盘时钟)与 Android 时间保持同步非常有用。

AAOS 会在启动期间对此属性执行一次 WRITE,之后仅会在时间源变化被传播时才会执行 WRITE。AAOS 会正确填充 VehiclePropValue.timestamp。AAOS 不会因时间自然流逝而发送更新。int64Values[0] 表示提供的 Unix 时间(以毫秒为单位)。

该属性可能需要超过 0 毫秒的时间才能通过堆栈传播,而拥有带着时间戳的属性有助于减少时移。因此,对于向该属性执行的所有 WRITE,时间戳都可用于消除这种时移:

drift = elapsedTime - PropValue.timestamp effectiveTime = PropValue.value.int64Values[0] + drift

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:VehicleUnit:MILLI_SECS
版本:Android 13

AP_POWER_BOOTUP_REASON

用于报告当前开机原因的属性。这是一个 STATIC 属性,在设备关机前的整个时间段内都不会改变。例如,在系统因车门解锁而自动开机后,即使用户再次按下电源按钮,开机原因仍会保持为 VehicleApPowerBootupReason#USER_UNLOCKint32Values[0] 必须为 VehicleApPowerBootupReason

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

AP_POWER_STATE_REPORT

用于报告应用处理器电源状态的属性。 假设 AP 的电源状态由单独的电源控制器控制。

  • int32Values[0] VehicleApPowerStateReport 枚举值
  • int32Values[1] 唤醒所需的时间,以毫秒 (ms) 为单位,如有必要的话(否则为 0)

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

AP_POWER_STATE_REQ

用于控制应用处理器电源状态的属性。 假设 AP 的电源状态由单独的电源控制器控制。对于配置信息,VehiclePropConfig.configArray 必须在 VehicleApPowerStateConfigFlag 中具有位标志组合值

  • int32Values[0] VehicleApPowerStateReq 枚举值
  • int32Values[1] 与每个状态相关的额外参数;如果未使用,则为 0。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

AUTOMATIC_EMERGENCY_BRAKING_ENABLED

启用或停用自动紧急制动 (AEB)。 设置为 true 可启用 AEB,设置为 false 可停用 AEB。当 AEB 处于启用状态时,车辆中的 ADAS 系统应保持开启并进行监控,以避免可能发生的碰撞。此属性应仅适用于车速较高的应用场景。如需启用低速自动紧急制动功能,应使用 LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED

一般来说,AUTOMATIC_EMERGENCY_BRAKING_ENABLED 应始终返回 true 或 false。如果该功能因某种临时状态(例如车速过低)而不可用,则必须通过 AUTOMATIC_EMERGENCY_BRAKING_STATE 属性中的 ErrorState 值传达此信息。

此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

AUTOMATIC_EMERGENCY_BRAKING_STATE

自动紧急制动 (AEB) 状态。返回 AEB 的当前状态。此属性必须始终返回 AutomaticEmergencyBrakingState 或 ErrorState 中定义的有效状态。它不得通过 StatusCode 显示错误,而必须改用受支持的错误状态。此属性应仅适用于车速较高的应用场景。如需表示低速自动紧急制动系统的状态,应使用 LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE

如果 AEB 在启用刹车之前包含前向碰撞警告,这些警告必须通过前向碰撞警告 (FCW) 属性显示。

对于全局区域 ID (0),必须定义 StatusCode#VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 AutomaticEmergencyBrakingState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:ForwardCollisionWarningState/ErrorState
单位类型:无
版本:Android 14

BLIND_SPOT_WARNING_ENABLED

启用和停用盲点警告 (BSW)。 设置为 true 可启用 BSW,设置为 false 可停用 BSW。当 BSW 处于启用状态时,车辆中的 ADAS 系统应保持开启,并监控车辆的盲点区域是否有物体。

一般来说,BLIND_SPOT_WARNING_ENABLED 应始终返回 true 或 false。 如果该功能因某种临时状态(例如车速过低)而不可用,则必须通过 BLIND_SPOT_WARNING_STATE 属性中的 ErrorState 值传达此信息。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

BLIND_SPOT_WARNING_STATE

盲点警告 (BSW) 状态。 返回 BSW 的当前状态。此属性必须始终返回 BlindSpotWarningStateErrorState 中定义的有效状态。它不得通过 StatusCode 显示错误,而必须改用受支持的错误状态。

对于每个受支持的区域 ID,必须定义 StatusCode#VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 BlindSpotWarningState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:BlindSpotWarningState/ErrorState
单位类型:无
版本:Android 14

CABIN_LIGHTS_STATE

返回车厢灯的状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

CABIN_LIGHTS_SWITCH

车厢灯开关。 控制车厢灯的实体开关的位置。如果灯开着是因为门打开了或因为语音指令,则可能与 CABIN_LIGHTS_STATE 不同。例如,当开关处于关闭自动位置时。

此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

CLUSTER_DISPLAY_STATE

更改仪表板屏幕的状态。

  • 边界:用于渲染仪表集群 activity 的区域。
  • 边衬区:activity 不应在该区域放置重要信息。

可能的值为:

  • int32[0] 开启、关闭:0 - 关闭,1 - 开启,-1 - 随意
  • int32[1] 边界 - 左:正数 - 左侧位置(以像素为单位)-1 - 随意(应设置所有边界字段)
  • int32[2] 边界 - 上:与“左”格式相同
  • int32[3] 边界 - 右:与“左”格式相同
  • int32[4] 边界 - 下:与“左”格式相同
  • int32[5] 边衬区 - 左:正数 - 实际左边衬区值(以像素为单位)-1 - 随意(应将所有边衬区字段设置为“随意”)
  • int32[6] 边衬区 - 上:与“左”格式相同
  • int32[7] 边衬区 - 右:与“左”格式相同
  • int32[8] 边衬区 - 下:与“左”格式相同

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

CLUSTER_NAVIGATION_STATE

通知当前导航状态。字节:NavigationStateProto 的序列化消息。

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:
单位类型:无
版本:Android 13

CLUSTER_REPORT_STATE

报告当前显示状态和 ClusterUI 状态。 ClusterHome 在处理 CLUSTER_SWITCH_UICLUSTER_DISPLAY_STATE 时发送此消息。此外,ClusterHome 应在首次启动时发送此消息。当 ClusterOS 收到此消息时,如果内部预期与收到的消息不同,那么它应会再次发送 CLUSTER_SWITCH_UICLUSTER_DISPLAY_STATE 以匹配状态。

  • int32[0] 开启/关闭:0 - 关闭,1 - 开启
  • int32[1] 边界 - 左
  • int32[2] 边界 - 上
  • int32[3] 边界 - 右
  • int32[4] 边界 - 下
  • int32[5] 边衬区 - 左
  • int32[6] 边衬区 - 上
  • int32[7] 边衬区 - 右
  • int32[8] 边衬区 - 下
  • int32[9] 全屏或主屏幕中的 ClusterUI 类型。0 表示 ClusterHome。其他值则按照 OEM 的定义。
  • int32[10] 子屏幕中的 ClusterUI 类型,如果当前显示两个界面的话。-1 表示该区域不再使用。字节:表示 ClusterUI 可用性的数组。0 表示不可用,1 表示可用。例如,如果汽车支持 OEM 定义的三个 ClusterUI(例如 HOME、MAPS 和 CALL),并且仅在移动网络可用时支持 CALL 界面。然后,如果网络可用,它发送 [1 1 1];如果网络不可用,则发送 [1 1 0]。

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

CLUSTER_REQUEST_DISPLAY

用于更改仪表板显示屏状态以显示某些 ClusterUI 的请求。 当前显示状态为关闭时,ClusterHome 会将此消息发送到 ClusterOS,请求开启显示屏以显示特定的 ClusterUI。ClusterOS 应使用 CLUSTER_DISPLAY_STATE 响应此请求

  • int32 要显示的 ClusterUI 类型

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

CLUSTER_SWITCH_UI

在仪表板显示屏中启动 ClusterUI。

  • int32 要显示的 ClusterUI 类型,0 表示 ClusterHome,即仪表集群显示屏的屏幕,并为仪表集群显示屏提供默认界面和一种启动器功能。其他值则按照 OEM 的定义。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

CREATE_USER

创建 Android 用户后由 Android 系统调用。 HAL 可以使用此属性来创建其相应的用户。这是一个异步请求:Android 通过设置 VehiclePropValue 发出请求,HAL 必须通过属性更改进行响应,指明请求是成功还是失败。如果失败,Android 系统会移除该用户。

请求的格式由 CreateUserRequest 定义,响应的格式由 CreateUserResponse 定义。例如,如果系统有两位用户(0 和 10),并且创建了第三位用户(即临时访客),请求将如下所示:

  • int32[0] 42 // 请求 ID
  • int32[1] 11 // 所创建用户的 Android ID
  • int32[2] 6 // 所创建用户的 Android 标志(临时访客)
  • int32[3] 10 // 当前用户
  • int32[4] 0 // 当前用户标志(无)
  • int32[5] 3 // 用户数量
  • int32[6] 0 // 第一位用户(用户 0)
  • int32[7] 0 // 第一位用户标志(无)
  • int32[8] 10 // 第二位用户(用户 10)
  • int32[9] 0 // 第二位用户标志(无)
  • int32[10] 11 // 第三位用户(用户 11)
  • int32[11] 6 // 第三位用户标志(临时访客)字符串:"ElGuesto" // 新用户的名称

如果请求成功,HAL 会返回:

  • int32[0] 42 // 请求 ID
  • int32[1] 1 // CreateUserStatus::SUCCESS

但如果失败,则返回:

  • int32[0] 42 // 请求 ID
  • int32[1] 2 // CreateUserStatus::FAILURE 字符串:"D'OH!" //

含义是黑箱,并传递给调用方(例如设置界面),后者会执行适当的操作。

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

CRITICALLY_LOW_TIRE_PRESSURE

此属性表示每个轮胎的极低胎压阈值。它表示何时更换或修理轮胎。此值必须小于或等于 TIRE_PRESSURE 中的 minFloatValue。最小和最大属性值(minFloatValue 和 maxFloatValue)不适用于此属性。

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:KILOPASCAL
版本:Android 13

CRUISE_CONTROL_COMMAND

WRITE 巡航控制 (CC) 指令。如需详细了解每个受支持的指令,请参阅 CruiseControlCommand。对于全局区域 ID (0),必须定义 StatusCode#VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 CruiseControlState 的所有状态。通过此属性发送的任何不受支持的指令都必须返回 StatusCode#INVALID_ARG。如果此属性因 CC 处于停用状态(例如 CRUISE_CONTROL_ENABLED 为 false)而不可用,则必须返回 StatusCode#NOT_AVAILABLE_DISABLED。如果实现了 CRUISE_CONTROL_STATE 且状态设置为 ErrorState 值,则此属性必须返回与 ErrorState 值一致的 StatusCode。例如,如果 CRUISE_CONTROL_STATE 设置为 ErrorState#NOT_AVAILABLE_SPEED_LOW,则此属性必须返回 StatusCode#NOT_AVAILABLE_SPEED_LOW

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:CruiseControlCommand
单位类型:无
版本:Android 14

CRUISE_CONTROL_ENABLED

启用或停用巡航控制 (CC)。 设置为 true 表示启用 CC,设置为 false 表示停用 CC。此属性由所有形式的 CruiseControlType 共享。当 CC 处于启用状态时,车辆中的 ADAS 系统应处于开启状态并响应指令。一般来说,CRUISE_CONTROL_ENABLED 应始终返回 true 或 false。如果该功能因某种临时状态(例如车速过低)而不可用,则必须通过 CRUISE_CONTROL_STATE 属性中的 ErrorState 值传达此信息。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

CRUISE_CONTROL_STATE

巡航控制 (CC) 的当前状态。 此属性会返回 CC 当前的状态。通常,此属性应返回 CruiseControlState 或 ErrorState 中定义的有效状态。例如,如果该功能因某种临时状态而不可用,则应通过 ErrorState 传达此信息。对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValue 数组,除非同时支持 CruiseControlState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:CruiseControlState/ErrorState
单位类型:无
版本:Android 14

CRUISE_CONTROL_TARGET_SPEED

巡航控制 (CC) 的当前目标速度。 OEM 应为此属性设置 minFloatValue 和 maxFloatValue 值,以定义最小和最大目标速度值。这些值必须是非负值。maxFloatValue 表示目标速度的上限。minFloatValue 表示目标速度的下限。如果此属性因 CC 处于停用状态(例如 CRUISE_CONTROL_ENABLED 为 false)而不可用,则必须返回 StatusCode#NOT_AVAILABLE_DISABLED。如果实现了 CRUISE_CONTROL_STATE 且状态设置为 ErrorState 值,则此属性必须返回与 ErrorState 值一致的 StatusCode。例如,如果 CRUISE_CONTROL_STATE 设置为 ErrorState#NOT_AVAILABLE_SPEED_LOW,则此属性必须返回 StatusCode#NOT_AVAILABLE_SPEED_LOW

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:METER_PER_SEC
版本:Android 14

CRUISE_CONTROL_TYPE

巡航控制 (CC) 的当前类型。 当 CRUISE_CONTROL_ENABLED 为 true 时,此属性会返回当前启用的 CC 类型(例如标准 CC 和自适应 CC、预测性 CC)。通常,此属性应返回 CruiseControlTypeErrorState 中定义的有效状态。例如,如果该功能因某种临时状态而不可用,则应通过 ErrorState 传达此信息。对于全局区域 ID (0),必须定义 StatusCode#VehicleAreaConfig#supportedEnumValues 数组,除非支持 CruiseControlType(包括不推荐的 OTHER)和 ErrorState 的所有状态。尝试将 CruiseControlType#OTHERErrorState WRITE 到此属性会抛出 IllegalArgumentException。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:CruiseControlType ErrorState
单位类型:无
版本:Android 14

CURRENT_GEAR

当前档位。在非手动情况下,所选档位可能与当前档位不符。例如,所选档位是 GEAR_DRIVE,而当前档位是 GEAR_1GEAR_2 等档位中的一个,这反映了变速器当前运行的实际档位。配置数据中的值必须表示此车辆的受支持档位列表。例如,自动变速器的配置数据必须包含 {GEAR_NEUTRAL, GEAR_REVERSE, GEAR_PARK, GEAR_1, GEAR_2,...},而手动变速器的列表必须为 {GEAR_NEUTRAL, GEAR_REVERSE, GEAR_1, GEAR_2,...}。此列表不必与 GEAR_SELECTION 中报告的受支持档位列表相同。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleGear
单位类型:无
版本:Android 13

CURRENT_POWER_POLICY

向 VHAL 层通知当前电源政策。 当前电源政策发生变化时,汽车电源政策服务会设置此属性

string: "sample_policy_id" // power policy ID

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

DISABLED_OPTIONAL_FEATURES

允许在 VHAL 中停用可选功能。此属性会报告应停用的可选功能。系统的所有允许可选功能均在汽车服务叠加层中声明,即 config_allowed_optional_car_features。此属性允许停用叠加层中定义的功能。如果没有此属性,叠加层中声明的所有功能都将被启用。值 READ 应包含所有已停用的功能,并以英文逗号 (,) 分隔。例如:com.android.car.user.CarUserNoticeService,storage_monitoring

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

DISPLAY_BRIGHTNESS

用于表示显示屏亮度的属性。 某些车辆只有一个用于控制所有显示屏亮度的控件。此属性用于共享对该控件的更改。如果配备了亮度受单独控制的显示屏,汽车必须使用 PER_DISPLAY_BRIGHTNESS。应仅实现 DISPLAY_BRIGHTNESSPER_DISPLAY_BRIGHTNESS 中的一个。如果这两者都可用,AAOS 会使用 PER_DISPLAY_BRIGHTNESS。如果此属性可写入,Android 可以在用户通过“设置”更改显示屏亮度时设置此值。如果仅为 READ,用户仍可通过“设置”更改显示屏亮度,但更改不得反映在其他显示屏上。

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

DISTANCE_DISPLAY_UNITS

显示距离单位。 表示汽车使用哪些单位向用户显示距离。例如,英里、米或公里。距离单位在 VehicleUnit 中定义。VehiclePropConfig.configArray 用于表示支持的距离显示单位。例如,configArray[0] = METER configArray[1] = KILOMETER configArray[2] = MILE。如果更新 DISTANCE_DISPLAY_UNITS 会影响其他 *_DISPLAY_UNITS 属性的值,则必须更新它们的值,并也将其传达给 AAOS 框架。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleUnit
单位类型:无
版本:Android 13

DOOR_CHILD_LOCK_ENABLED

已启用车门童锁功能。 如果已启用车门童锁功能,则返回 true;如果已停用,则返回 false。如果已启用,门就无法从内部打开。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

DOOR_LOCK

门锁为 true 表示门已上锁。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

DOOR_MOVE

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示车门在打开时的最快移动速度。minInt32Value 表示车门在关闭时的最慢移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。门达到位置极限后,该值必须重置为 0。如果 DOOR_MOVE 的值为 0,则表示目前没有发生任何移动。

此属性不采用任何特定单位,而是采用相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

DOOR_POS

车门位置。 必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示车门已关闭。minInt32Value 必须是 0。maxInt32Value 表示车门已完全打开。介于 minInt32ValuemaxInt32Value 之间的值表示门处于关闭位置和完全打开位置之间的过渡状态。

此属性不采用任何特定单位,而是采用相对位置的指定范围。某些车辆(小型货车)可以通过电动方式打开车门。因此,具备 WRITE 此属性的能力。此属性定义为 VehiclePropertyAccess READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

E 到 G

ELECTRONIC_TOLL_COLLECTION_CARD_STATUS

Electronic Toll Collection card status. This property indicates the status of ETC card in this vehicle. If the head unit is aware of an ETC card attached to the vehicle, ELECTRONIC_TOLL_COLLECTION_CARD_TYPE gives that status of the card. Otherwise, this property should be UNAVAILABLE

Change mode: ON_CHANGE
Access mode: READ
Enum type: ElectronicTollCollectionCardStatus
Unit type: N/A
Release: Android 13

ELECTRONIC_TOLL_COLLECTION_CARD_TYPE

Electronic Toll Collection (ETC) card type. This property indicates the type of ETC card in this vehicle. If the head unit is aware of an ETC card attached to the vehicle, this property should return the type of card attached; otherwise, this property should be UNAVAILABLE

Change mode: ON_CHANGE
Access mode: READ
Enum type: ElectronicTollCollectionCardType
Unit type: N/A
Release: Android 13

EMERGENCY_LANE_KEEP_ASSIST_ENABLED

Enable or disable Emergency Lane Keep Assist (ELKA). Set true to enable ELKA and false to disable ELKA. When ELKA is enabled, the ADAS system in the vehicle should be on and monitoring for unsafe lane changes by the driver. When an unsafe maneuver is detected, ELKA alerts the driver and applies steering corrections to keep the vehicle in its original lane. In general, EMERGENCY_LANE_KEEP_ASSIST_ENABLED should always return true or false. If the feature is not available due to some temporary state, such as the vehicle speed being too low, that information must be conveyed through the ErrorState values in the EMERGENCY_LANE_KEEP_ASSIST_STATE property. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14

EMERGENCY_LANE_KEEP_ASSIST_STATE

Emergency Lane Keep Assist (ELKA) state. Returns the current state of ELKA. Generally, this property should return a valid state defined in the EmergencyLaneKeepAssistState or ErrorState For example, if the feature is not available due to some temporary state, that information should be conveyed through ErrorState For the global area ID (0), the VehicleAreaConfig#supportedEnumValues array must be defined unless all states of EmergencyLaneKeepAssistState (including OTHER, which is not recommended) and ErrorState are supported.

Change mode: ON_CHANGE
Access mode: READ
Enum type: EmergencyLaneKeepAssistState/ErrorState
Unit type: N/A
Release: Android 14

ENGINE_COOLANT_TEMP

Temperature of engine coolant.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:CELSIUS
Release: Android 13

ENGINE_IDLE_AUTO_STOP_ENABLED

Represents feature for engine idle automatic stop. If true, the vehicle may automatically shut off the engine when it is not needed and then automatically restart it when needed. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14

ENGINE_OIL_LEVEL

Engine oil level.

Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleOilLevel
Unit type: N/A
Release: Android 13

ENGINE_OIL_TEMP

Temperature of engine oil.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:CELSIUS
Release: Android 13

ENGINE_RPM

Engine revolutions per minute (RPM).

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:RPM
Release: Android 13

ENV_OUTSIDE_TEMPERATURE

Outside temperature. This property must communicate the temperature reading of the environment outside the vehicle. If there are multiple sensors for measuring the outside temperature, this property should be populated with the mean or a meaningful weighted average of the readings that best represent the temperature of the outside environment.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:CELSIUS
Release: Android 13

EV_BATTERY_DISPLAY_UNITS

EV battery units for display. Indicates which units the car is using to display EV battery information to the user. For example, watt-hours (Wh), kilowatt-hours (kWh) or ampere-hours (Ah). VehiclePropConfig.configArray is used to indicate the supported electrical energy. units. Electrical energy units are defined in VehicleUnit For example:

  configArray[0] = WATT_HOUR configArray[1] = AMPERE_HOURS configArray[2] = KILOWATT_HOUR

If updating EV_BATTERY_DISPLAY_UNITS affects the values of other *_DISPLAY_UNITS properties, then their values must be updated and communicated to the AAOS framework as well. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleUnit
Unit type: N/A
Release: Android 13

EV_BATTERY_INSTANTANEOUS_CHARGE_RATE

EV instantaneous charge rate in milliwatts. A positive value indicates the battery is being charged. A negative value indicates the battery being discharged.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MW
Release: Android 13

EV_BATTERY_LEVEL

Returns the current battery level, whether EV or hybrid. This value will not exceed EV_CURRENT_BATTERY_CAPACITY To calculate the battery percentage, use (EV_BATTERY_LEVEL, EV_CURRENT_BATTERY_CAPACITY)*100.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:WH
Release: Android 13

EV_BRAKE_REGENERATION_LEVEL

Regenerative braking level of a electronic vehicle. The maxInt32Value and minInt32Value in VehicleAreaConfig must be defined. All values between minInt32Value and maxInt32Value must be supported. The minInt32Value must be 0. The maxInt32Value indicates the setting for the maximum amount of energy regenerated from braking. The minInt32Value indicates the setting for no regenerative braking. This property is a more granular form of EV_REGENERATIVE_BRAKING_STATE It allows the user to set a more specific level of regenerative braking if the states in EvRegenerativeBrakingState are not granular enough for the OEM. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13

EV_CHARGE_CURRENT_DRAW_LIMIT

Indicates the maximum current draw threshold for charging set by the user. EvChargeState::configArray[0] is used to specify the max current draw allowed by the vehicle in Amperes. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITEREAD
Enum type: N/A
Unit type: VehicleUnit:AMPERE
Release: Android 13

EV_CHARGE_PERCENT_LIMIT

Indicates the maximum charge percent threshold set by the user. Indicates the maximum charge percent threshold set by the user. Returns a float value from 0 to 100. configArray is used to specify the valid values. For example, if the vehicle supports the following charge percent limit values: [20, 40, 60, 80, 100] then the configArray should be {20, 40, 60, 80, 100} If the configArray is empty then all values from 0 to 100 must be valid. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE,, READ
Enum type: N/A
Unit type: N/A
Release: Android 13

EV_CHARGE_PORT_CONNECTED

EV charge port connected. If the vehicle has multiple charging ports, this property must return true when any of the charge ports are connected.

Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13

EV_CHARGE_PORT_OPEN

EV charge port open. If the vehicle has multiple charging ports, this property must return true if any of the charge ports are open. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITEREAD
Enum type: N/A
Unit type: N/A
Release: Android 13

EV_CHARGE_STATE

Charging state of the car Returns the current charging state of the car. If the vehicle has a target charge percentage other than 100, this property must return EvChargeState::STATE_FULLY_CHARGED when the battery charge level has reached the target level. See EvChargeState::EV_CHARGE_PERCENT_LIMIT for more context.

Change mode: ON_CHANGE
Access mode: READ
Enum type: EvChargeState
Unit type: N/A
Release: Android 13

EV_CHARGE_SWITCH

Start or stop charging the EV battery. The setting wanted by the user. Setting this property to true starts the battery charging, and false to stop charging. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITEREAD
Enum type: N/A
Unit type: N/A
Release: Android 13

EV_CHARGE_TIME_REMAINING

Estimated charge time remaining in seconds. Returns 0 if the vehicle is not charging.

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:SECS
Release: Android 13

EV_CURRENT_BATTERY_CAPACITY

Current usable battery capacity for and EV or hybrid vehicle. Returns the actual value of battery capacity, when EV or hybrid. This property captures the real-time usable battery capacity taking into account factors such as battery aging and temperature dependency. This value might differ from INFO_EV_BATTERY_CAPACITY because INFO_EV_BATTERY_CAPACITY returns the nominal battery capacity from when the vehicle was new.

Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:WH
Release: Android 14

EV_REGENERATIVE_BRAKING_STATE

Regenerative braking or one-pedal drive setting of the car. Returns the current setting associated with the regenerative braking setting in the car. If the OEM requires more setting than those provided in EvRegenerativeBrakingState, the EV_BRAKE_REGENERATION_LEVEL property can be used instead, which provides more granular information.

Change mode: ON_CHANGE
Access mode: READ
Enum type: EvRegenerativeBrakingState
Unit type: N/A
Release: Android 13

EV_STOPPING_MODE

Represents property for the current stopping mode of the vehicle. For the global area ID (0), the VehicleAreaConfig#supportedEnumValues must be defined unless all enum values of EvStoppingMode are supported. The EvStoppingMode enum may be extended to include more states in the future. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: EvStoppingMode
Unit type: N/A
Release: Android 14

EVS_SERVICE_REQUEST

Enable and request an EVS service. The property provides a way to trigger EVS services. The VHAL should use this property to request Android to start or stop EVS service.

  • int32Values[0] Type of EVS service. The value must be and enum in EvsServiceType.
  • int32Values[1] State of the EVS service. The value must be one of enums in EvsServiceState.

For example, to enable rear view EVS service, Android can set the property value as:

[EvsServiceType::REAR_VIEW, EvsServiceState::ON]

Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13

EXTERNAL_CAR_TIME

Current date and time suggestion for the cr, encoded as Epoch time (in milliseconds). This value denotes the number of milliseconds seconds that have elapsed since 1/1/1970 UTC. This property signals a change in CarTime to Android. If the property is supported, VHAL must report the most accurate current CarTime when this property is read, and publish a change to this property when the CarTime value has changed.

An on-change event for this property must be published when CarTime changes for any reason other than the natural elapse of time (time delta smaller than 500ms should not trigger an on change event). Android will read and subscribe to this property to fetch time from VHAL. This can be useful to synchronize Android's time with other vehicle systems (dash clock). int64Values[0] = provided Epoch time (in milliseconds) Whenever a new Value for the property is received, AAOS creates and sends an ExternalTimeSuggestion to the TimeDetectorService.

If other sources do not have a higher priority, Android will use this to set the system time. For information on how to adjust time source priorities and how time suggestions are handled (including how Android handles gitter, drift, and minimum resolution), see the Time Detector Service documentation.

drift = elapsedTime - PropValue.timestamp effectiveTime = PropValue.value.int64Values[0] + drift

We strongly recommend that this propertynot be used to retrieve time from ECUs using protocols (such as GNSS, NTP, and Telephony). Since these protocols are already supported by Android, we recommend you use Android systems instead of wiring through the VHAL with this property.

Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLI_SECS
Release: Android 13

FOG_LIGHTS_STATE

Fog light state. Return the current state of fog lights. If the:

  • Car has front and rear fog lights. Front and rear fog lights can only be controlled together. FOG_LIGHTS_STATE must be implemented. FRONT_FOG_LIGHTS_STATE and REAR_FOG_LIGHTS_STATE must not be implemented.
  • Front and rear fog lights can only be controlled independently. FOG_LIGHTS_STATE must not be implemented and FRONT_FOG_LIGHTS_STATE and REAR_FOG_LIGHTS_STATE must be implemented.
  • Car has only front fog lights. Only one of FOG_LIGHTS_STATE or FRONT_FOG_LIGHTS_STATE must be implemented (not both). REAR_FOG_LIGHTS_STATE must not be implemented.
  • Car has only rear fog lights. Only one of FOG_LIGHTS_STATE or REAR_FOG_LIGHTS_STATE must be implemented (not both). FRONT_FOG_LIGHTS_STATE must not be implemented.

Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13

FOG_LIGHTS_SWITCH

Fog light switch. The setting wanted by the user. If the:

  • Car has both front and rear fog lights. If front and rear fog lights can only be controlled together, FOG_LIGHTS_SWITCH must be implemented. FRONT_FOG_LIGHTS_SWITCH and REAR_FOG_LIGHTS_SWITCH must not be implemented.
  • Front and rear fog lights can only be controlled independently. FOG_LIGHTS_SWITCH must not be implemented. FRONT_FOG_LIGHTS_SWITCH and REAR_FOG_LIGHTS_SWITCH must be implemented.
  • Car has only front fog lights. Only one of FOG_LIGHTS_SWITCH or FRONT_FOG_LIGHTS_SWITCH must be implemented (not both). REAR_FOG_LIGHTS_SWITCH must not be implemented.
  • Car has only rear fog lights. Only one of FOG_LIGHTS_SWITCH or REAR_FOG_LIGHTS_SWITCH must be implemented (and not both). FRONT_FOG_LIGHTS_SWITCH must not be implemented.

This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13

FORWARD_COLLISION_WARNING_ENABLED

Enable or disable Forward Collision Warning (FCW). Set to true to enable FCW and false to disable FCW. When FCW is enabled, the ADAS system in the vehicle should be turned on and monitoring for potential collisions. In general, FORWARD_COLLISION_WARNING_ENABLED should always return true or false. If the feature is not available due to some temporary state, such as the vehicle speed being too low, that information must be conveyed through the ErrorState values in the FORWARD_COLLISION_WARNING_STATE property.

This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14

FORWARD_COLLISION_WARNING_STATE

Forward Collision Warning (FCW) state. Returns the current state of FCW. This property must always return a valid state defined in ForwardCollisionWarningState or ErrorState It must not surface errors through StatusCode and must use the supported error states instead. For the global area ID (0), the VehicleAreaConfig#supportedEnumValues array must be defined unless all states of both ForwardCollisionWarningState (including OTHER, which is not recommended) and ErrorState are supported.

Change mode: ON_CHANGE
Access mode: READ
Enun type: ForwardCollisionWarningState/ErrorState
Unit type: N/A
Release: Android 14

FRONT_FOG_LIGHTS_STATE

Front fog lights state. Returns the current state of the front fog lights. Only one of FOG_LIGHTS_STATE or FRONT_FOG_LIGHTS_STATE must be implemented. Refer to the documentation on FOG_LIGHTS_STATE for more information.

Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13

FRONT_FOG_LIGHTS_SWITCH

Front fog lights switch. The setting wanted by the user. Only one of FOG_LIGHTS_SWITCH or FRONT_FOG_LIGHTS_SWITCH must be implemented. Refer to the documentation on FOG_LIGHTS_SWITCH for more information.

This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13

FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME

Fuel consumption units for display. Indicates type of units the car is using to display fuel consumption information to user True indicates units are distance over volume such as MPG. False indicates units are volume over distance such as L/100KM. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13

FUEL_DOOR_OPEN

Fuel door open. This property must communicate if the fuel door on the vehicle is open or not. This property does not apply to EVs. That is, if INFO_FUEL_TYPE only contains FuelType::FUEL_TYPE_ELECTRIC, this property must not be implemented. For EVs, implement EV_CHARGE_PORT_OPEN. This property is defined as VehiclePropertyAccess.READ_WRITE but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13

FUEL_LEVEL

Fuel remaining in the vehicle, in milliliters. This property must communicate the current amount of fuel remaining in the vehicle in milliliters. This property does not apply to electric vehicles. That is, if INFO_FUEL_TYPE only contains FuelType::FUEL_TYPE_ELECTRIC, this property must not be implemented. For EVs, implement EV_BATTERY_LEVEL Value can not exceed INFO_FUEL_CAPACITY

Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLILITER
Release: Android 13

FUEL_LEVEL_LOW

Warning for fuel low level. This property corresponds to the low fuel warning on the dashboard. Once FUEL_LEVEL_LOW is set, it should not be cleared until more fuel is added to the vehicle. This property can account for all fuel sources in a vehicle. For example, in a:

  • Gas-powered vehicle, this property is based solely on gas level.
  • Battery powered vehicle, this property is based only on battery level.
  • Hybrid vehicle, this property may can based on a combination of gas and battery levels, at the OEM's discretion.

Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13

FUEL_VOLUME_DISPLAY_UNITS

Fuel volume units for display. Indicates which units the car is using to display fuel volume to the user. For example, Liter or Gallon. VehiclePropConfig.configArray is used to indicate the supported fuel volume display units. Volume units are defined in VehicleUnit For example, configArray[0] = LITER configArray[1] = GALLON If updating FUEL_VOLUME_DISPLAY_UNITS affects the values of other *_DISPLAY_UNITS properties, then their values must be updated and communicated to the AAOS framework, too. This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleUnit
Unit type: N/A
Release: Android 13

GEAR_SELECTION

The gear selected by the user. Values in the config data must represent the list of supported gears for this vehicle. For example, config data for an automatic transmission must contain {GEAR_NEUTRAL, GEAR_REVERSE, GEAR_PARK, GEAR_DRIVE, GEAR_1, GEAR_2,...} and for manual transmission the list must be {GEAR_NEUTRAL, GEAR_REVERSE, GEAR_1, GEAR_2,...} For an automatic transmission vehicle that allows the driver to select specific gears on demand (for example, manual mode), the value for GEAR_SELECTION must be set to the specific gear selected by the driver instead of GEAR_DRIVE

Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleGear
Unit type: N/A
Release: Android 13

GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT

EU's General security regulation compliance requirement. Returns a value to indicate if general security regulation compliance is required and, if so, the type of requirement.

Change mode: STATIC
Access mode: READ
Enum type: GsrComplianceRequirementType
Unit type: N/A
Release: Android 14

GLOVE_BOX_DOOR_POS

Property that represents the current position of the glove box door. The maxInt32Value and minInt32Value in VehicleAreaConfig must be defined. All integers between minInt32Value and maxInt32Value must be supported. The minInt32Value indicates that the glove box door is closed. The minInt32Value must be 0. The maxInt32Value indicates that the glove box door is in the fully open position. Values in between minInt32Value and maxInt32Value indicate a transition state between the closed and fully open positions.

This property is not in any particular unit but in a specified range of relative positions. The area ID must match the seat by which the glove box is intended to be used. For example if the front right dashboard has a glove box embedded in it, then the area ID should be SEAT_1_RIGHT

This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14

GLOVE_BOX_LOCKED

Lock or unlock the glove box. If true, the glove box is locked. If false, the glove box is unlocked. The area ID must match the seat by which the glove box is intended to be used. For example, if the front right dashboard has an embedded glove box embedded, then the area ID should be VehicleAreaSeat#ROW_1_RIGHT

This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can implement it as VehiclePropertyAccess.READ only.

Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14

H 到 I

HANDS_ON_DETECTION_DRIVER_STATE

离手检测 (HOD) 驾驶员状态。返回以下状况:驾驶员的手是否放在方向盘上。通常,此属性应返回 HandsOnDetectionDriverStateErrorState 中定义的有效状态。例如,如果此功能因某种临时状态而不可用,则应通过 ErrorState 传达此信息。如果车辆因驾驶员的手离开方向盘时间过长而想要向用户发送警告,则应通过 HANDS_ON_DETECTION_WARNING 显示警告。对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 HandsOnDetectionDriverState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:HandsOnDetectionDriverState/ErrorState
单位类型:无
版本:Android 14

HANDS_ON_DETECTION_ENABLED

启用或停用离手检测 (HOD)。设置为 true 表示启用 HOD,设置为 false 表示停用 HOD。启用 HOD 后,车辆内的系统应监控驾驶员的手是否放在方向盘上,并在检测到驾驶员的手已离开方向盘时发送警告。一般来说,HANDS_ON_DETECTION_ENABLED 应始终返回 true 或 false。

如果该功能因某种临时状态而不可用,则必须通过 HANDS_ON_DETECTION_STATE 属性中的 ErrorState 值传达此信息。此属性定义为 minInt32Value VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

HANDS_ON_DETECTION_WARNING

离手检测 (HOD) 警告。返回以下状况:是否因驾驶员双手离开方向盘时间过长而在向驾驶员发送警告。通常,此属性应返回 HandsOnDetectionWarningErrorState 中定义的有效状态。例如,如果该功能因某种临时状态而不可用,则应通过 ErrorState 传达此信息。对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 HandsOnDetectionWarning(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:HandsOnDetectionWarning/ErrorState
单位类型:无
版本:Android 14

HAZARD_LIGHTS_STATE

危险警示灯状态。返回危险警示灯的当前状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

HAZARD_LIGHTS_SWITCH

危险警示灯开关。用户所需的设置。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

HEADLIGHTS_STATE

前照灯状态。返回前照灯的当前状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

HEADLIGHTS_SWITCH

前照灯开关。用户所需的设置。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

HIGH_BEAM_LIGHTS_STATE

远光灯状态。返回远光灯的当前状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

HIGH_BEAM_LIGHTS_SWITCH

远光灯开关。用户所需的设置。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

HVAC_AC_ON

为指定的 areaId 开启和关闭空调。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_ACTUAL_FAN_SPEED_RPM

实际风扇速度。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_AUTO_ON

开启和关闭自动温控系统。如果为 true,则自动温控系统处于开启状态。如果为 false,则自动温控系统处于关闭状态。如果车辆不支持直接关闭自动温控系统,原始设备制造商 (OEM) 应在其 VHAL 实现中添加逻辑,以将 HVAC_AUTO_ON 设置为 false,从而更改必要的 HVAC 设置以间接关闭 HVAC_AUTO_ON。理想情况下,这不应对用户造成干扰。在自动温控系统已关闭时,OEM 应该将被修改的所有设置还原为之前的状态。这样,唯一的结果应该是 HVAC_AUTO_ON 处于关闭状态。如果无法将 HVAC 设置恢复为之前的设置,OEM 应实现干扰最小的更改。

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_AUTO_RECIRC_ON

自动内循环开启或关闭。自动内循环处于开启状态时,如果车辆检测到进气质量不佳,HVAC 系统可能会自动切换到内循环模式。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_DEFROSTER

为指定车窗使用风扇除霜。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_DUAL_ON

启用区域之间的温度耦合。HVAC_DUAL_ON 属性的 AreaIDs 应包含可耦合的 HVAC_TEMPERATURE_SET AreaIDs 组合。如果 HVAC_TEMPERATURE_SET 映射到 AreaIDs[a_1, a_2, ..., a_n],并且如果 HVAC_DUAL_ON 可启用以耦合 a_i 和 a_j,则 HVAC_DUAL_ON 属性必须映射到 [a_i | a_j]。此外,如果 a_k 和 a_l 也可以单独耦合在一起,则 HVAC_DUAL_ON 必须映射到 [a_i | a_j, a_k | a_l]。例如,某辆汽车有两个前排座椅(ROW_1_LEFTROW_1_RIGHT)和三个后排座椅(ROW_2_LEFT、ROW_2_CENTER 和 ROW_2_RIGHT)。有两个温度控制单元,分别位于驾驶员侧和乘客侧,可选择是否让其同步。这可以在 AreaIDs 中按如下方式表示:

HVAC_TEMPERATURE_SET > [ROW_1_LEFT | ROW_2_LEFT, ROW_1_RIGHT | ROW_2_CENTER | ROW_2_RIGHT]
HVAC_DUAL_ON > [ROW_1_LEFT | ROW_2_LEFT | ROW_1_RIGHT | ROW_2_CENTER | ROW_2_RIGHT]

启用此属性后,ECU 必须同步受影响区域的温度。如果开启或关闭 DUAL_ON 参数导致了有参数被修改的副作用,任何被修改的参数都应生成对 VHAL 的 onPropertyEvent() 回调。此外,如果设置一个温度(例如,驾驶员温度)会更改另一温度(例如,前排乘客温度),则必须生成适当的 onPropertyEvent() 回调。

如果用户更改温度而破坏了耦合(例如,独立设置乘客温度),则 VHAL 必须发送适当的 onPropertyEvent() 回调(包括 HVAC_DUAL_ON = false and HVAC_TEMPERATURE_SET[AreaID] = xxx)。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_ELECTRIC_DEFROSTER_ON

电加热除霜器的状态。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_FAN_DIRECTION

风扇方向设置。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleHvacFanDirection
单位类型:无
版本:Android 13

HVAC_FAN_DIRECTION_AVAILABLE

可用风扇位置。这是一个用于表示该区域可用风扇位置的位掩码。每个可用风扇方向在矢量中都由一个单独的条目表示。为了实现某个风扇方向,可能需要同时设置 vehicle_hvac_fan_direction 中的多个位。例如,一辆典型的汽车可能具有以下风扇位置:

- FAN_DIRECTION_FACE (0x1) - FAN_DIRECTION_FLOOR (0x2) - FAN_DIRECTION_FACE | FAN_DIRECTION_FLOOR (0x3) - FAN_DIRECTION_DEFROST (0x4) - FAN_DIRECTION_FLOOR | FAN_DIRECTION_DEFROST (0x6)

更改模式:静态
访问模式:READ
枚举类型:VehicleHvacFanDirection
单位类型:无
版本:Android 13

HVAC_FAN_SPEED

风扇转速设置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

  • minInt32Value 最低风扇转速
  • maxInt32Value 最高风扇转速

此属性不采用任何特定单位,而是采用相对速度的指定范围。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可选择将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_MAX_AC_ON

开启或关闭 MAX 空调。当 MAX 空调处于开启状态时,ECU 可以根据需要调整通风口位置、风扇速度、温度等项目,以尽快为车辆降温。如果开启或关闭 MAX 空调参数导致了有参数被修改的副作用,任何被修改的参数都应生成对 VHAL 的 onPropertyEvent() 回调。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_MAX_DEFROST_ON

开启和关闭 MAX 除霜。当 MAX 除霜处于开启状态时,ECU 可以根据需要调整通风口位置、风扇速度、温度等项目,以尽快给车窗除霜。如果开启或关闭 MAX 除霜参数导致了有参数被修改的副作用,任何被修改的参数都应生成对 VHAL 的 onPropertyEvent() 回调。HVAC_MAX_DEFROST_ONAreaIDs 表示在该区域内 MAX 除霜可控制。例如,areaConfig.areaId = {ROW_1_LEFT | ROW_1_RIGHT} 表示只能控制前排的 HVAC_MAX_DEFROST_ON。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_POWER_ON

表示 HVAC 的全局电源状态。将此属性设为 false 可能会将一些用于控制各个 HVAC 功能和子系统的属性标记为处于 UNAVAILABLE 状态。将此属性设为 true 可能会将一些用于控制各个 HVAC 功能和子系统的属性标记为处于 AVAILABLE 状态(除非其中任何属性或所有属性都因各自特性而处于 UNAVAILABLE 状态)。

HvacPower_DependentProperties 是指那些需要 HVAC 处于开机状态才能启用功能的属性。例如,在某些车辆中,如需开启空调,必须先将 HVAC 开机。HvacPower_DependentProperties 列表必须在 VehiclePropConfig.configArray 中设置;HvacPower_DependentProperties 只能包含与 VehicleArea:SEAT 相关联的属性

HVAC_POWER_ON 属性的 AreaID 映射必须包含 HvacPower_DependentProperties 映射到的所有 AreaIDs。例如,一辆汽车有:

  1. 两个前排座椅(ROW_1_LEFTROW_1_RIGHT)和三个后排座椅(ROW_2_LEFT、ROW_2_CENTER、ROW_2_RIGHT)。如果整个车辆的 HVAC 功能(空调、温度等)依赖于单个 HVAC 电源控制器,则 HVAC_POWER_ON 必须映射到 [ROW_1_LEFT | ROW_1_RIGHT | ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT]
  2. 两个前排座椅(ROW_1_LEFTROW_1_RIGHT)、三个第二排座椅 (ROW_2_LEFT, ROW_2_CENTER, ROW_2_RIGHT) 和三个第三排座椅 (ROW_3_LEFT, ROW_3_CENTER, ROW_3_RIGHT)。如果汽车的前排有温度控制器,且可以完全独立于车辆后部的温度控制器运行,则必须将 HVAC_POWER_ON 映射到一个包含两个元素的数组:
    - ROW_1_LEFT | ROW_1_RIGHT - ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT | ROW_3_LEFT | ROW_3_CENTER | ROW_3_RIGHT
    

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以选择将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_RECIRC_ON

开启和关闭内循环。控制车厢内外部空气的供应情况。内循环处于开启状态,表示进入车厢的大部分气流都来自车厢。内循环处于关闭状态,表示进入车厢的大部分气流来自车外。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_SEAT_TEMPERATURE

座椅加热和冷却。您必须定义 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅加热温度设置的最高值。除非车辆还支持座椅冷却,否则 minInt32Value 必须为 0。在本例中,minInt32Value 表示座椅冷却温度设置的最高值。此属性不采用任何特定单位,而是采用相对温度设置的指定范围。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_SEAT_VENTILATION

座椅通风。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 必须是 0。maxInt32Value 表示座椅可用的最大通风设置。

此属性不采用任何特定单位,而是采用通风设置的指定范围。

供 HVAC 应用和 Google 助理使用,用于启用、更改或读取座椅通风状态。这与座椅冷却不同。它可以在冷却的同时开启,也可不在冷却的同时开启。

此属性定义为 >VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_SIDE_MIRROR_HEAT

侧视镜加热。值越高,表示侧视镜加热水平就越高。您必须在 VehicleAreaConfig 中定义 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。在配置数据中:

  • maxInt32Value 表示最高加热级别。
  • minInt32Value 必须为 0,表示不加热。

此属性不采用任何特定单位,而是采用相对加热设置的指定范围。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以选择将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_STEERING_WHEEL_HEAT

设置方向盘的加热和冷却值范围。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示方向盘加热设置的最大值。minInt32Value 应为 0,除非车辆也支持方向盘冷却。在本例中,minInt32Value 表示方向盘冷却设置的最大值。此属性不采用任何特定单位,而是采用加热设置的指定范围。此属性定义为 VehiclePropertyAccess.READ,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

HVAC_TEMPERATURE_CURRENT

HVAC 当前温度。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:CELSIUS
版本:Android 13

HVAC_TEMPERATURE_DISPLAY_UNITS

显示温度单位。指明温度是以摄氏度还是华氏度显示。VehiclePropConfig.configArray 表示支持的温度显示单位。例如,configArray[0] = CELSIUS configArray[1] = FAHRENHEIT 此参数可用于显示系统中的任何 HVAC 温度。值必须为 VehicleUnit.CELSIUSVehicleUnit.FAHRENHEIT 之一

如果更新 HVAC_TEMPERATURE_DISPLAY_UNITS 会影响其他 *_DISPLAY_UNITS 属性的值,则必须更新它们的值,并将其传达给 AAOS 框架。

此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleUnit
单位类型:无
版本:Android 13

HVAC_TEMPERATURE_SET

以摄氏度为单位设置的 HVAC 目标温度。

必须定义 VehicleAreaConfig 中的 minFloatValuemaxFloatValue

  • minFloatValue 最低温度设置(摄氏度)。
  • maxFloatValue 最高温度设置(摄氏度)。

如果不支持 minFloatValuemaxFloatValue 之间的所有值,请使用 configArray 列出可设置的有效温度值。此文件还介绍了用于将车辆温度单位从摄氏度换算为华氏度(反之亦然)的对照表。如果车辆不支持标准单位换算,则必须定义 configArray

configArray 的设置如下:

  • configArray[0] [支持的温度下限(摄氏度)] * 10
  • configArray[1] [支持的温度上限(摄氏度)] * 10
  • configArray[2] [增量(摄氏度)] * 10
  • configArray[3] [支持的温度下限(华氏度)] * 10
  • configArray[4] [支持的温度上限(华氏度)] * 10
  • configArray[5] [增量(华氏度)] * 10

VehicleAreaConfig 中的 minFloatValuemaxFloatValue 必须分别等于 configArray[0]configArray[1]。例如,如果车辆支持温度值为 [16.0, 16.5, 17.0 ,..., 28.0] in Celsius [60.5, 61.5, 62.5 ,..., 84.5](华氏度),则 configArray 应为 configArray = {160, 280, 5, 605, 845, 10}

理想情况下,摄氏度增量与华氏度增量的比率应尽可能接近 1 摄氏度与 1.8 华氏度的实际比率。所有摄氏度值必须与由 configArray 定义的华氏度值一对一映射。客户使用 configArray 将此属性的温度单位从摄氏度换算为华氏度。此外,它还让客户清楚了解:要将此属性的摄氏度值设置为多少,系统才能达到客户所需的华氏度值。如果 ECU 没有将所有摄氏度值与华氏度值进行一对一映射,则 configArray 应仅定义具有一对一映射关系的摄氏度值和华氏度值列表。

例如,如果 ECU 支持 16 到 28 摄氏度值和 60 到 85 华氏度值,每个值的增量为 1,则一个可能的 configArray 为 code>{160, 280, 10, 600, 840, 20}。在本例中,85 不是受支持的温度。

任何设置在有效值之间的数值都应四舍五入到最接近的有效值。我们强烈建议 OEM 还实现 HVAC_TEMPERATURE_VALUE_SUGGESTION 车辆属性,因为它为应用提供了一种简单的方法来确定可为车辆设置的温度值,以及在摄氏度和华氏度之间换算值。

此属性定义为 VehiclePropertyAccess.READ,但 OEM 可以将其实现为 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:VehicleUnit:CELSIUS
版本:Android 13

HVAC_TEMPERATURE_VALUE_SUGGESTION

设置 HVAC 温度的建议值。

实现此属性可帮助应用了解最接近的支持温度值(摄氏度或华氏度)。

  • floatValues[0] 应用希望设置的目标请求值。
  • floatValues[1] floatValues[0] 的单位,应为 {VehicleUnit.CELSIUS, VehicleUnit.FAHRENHEIT} 之一
  • floatValues[2] OEM 建议的摄氏度值(此值不包含在请求中)。
  • floatValues[3] OEM 建议的华氏度值(此值不包含在请求中)。

应用调用 set(VehiclePropValue propValue) 并传入请求的值和该值的单位。OEM 需要通过 onPropertyEvent() 回调在 floatValues[2]floatValues[3] 中返回建议值。建议的值必须符合可从 HVAC_TEMPERATURE_SET configArray 派生出的值。换句话说,建议的值和 configArray 中的值表应相同。

我们建议 OEM 在其 VHAL 实现中添加自定义逻辑,以避免向 HVAC ECU 发出请求。逻辑可以如下所示。如需将温度从摄氏度换算成华氏度,请执行以下操作:

// Given tempC and the configArray float minTempC = configArray[0] / 10.0; float temperatureIncrementCelsius = configArray[2] / 10.0; float minTempF = configArray[3] / 10.0; float temperatureIncrementFahrenheit = configArray[5] / 10.0; // Round to the closest increment int numIncrements = round((tempC - minTempC) / temperatureIncrementCelsius); tempF = temperatureIncrementFahrenheit * numIncrements + minTempF;

例如,当驾驶员使用语音助理将 HVAC 温度设置为华氏 66.2 度时。首先,应用使用值 [66.2, (float)VehicleUnit.FAHRENHEIT,0,0] 设置此属性。如果 OEM 应用户请求建议将温度设置为 19.0 摄氏度或 66.5 华氏度,则 VHAL 必须生成一个具有属性值 [66.2, (float)VehicleUnit.FAHRENHEIT, 19.0, 66.5] 的回调。语音助理收到回调后,会通知用户并将 HVAC 温度设置为建议的值。

再举一个例子,一款应用通过查询 HVC_TEMPERATURE_SET 收到 21 摄氏度作为当前温度值,但应用需要知道汽车界面上显示的华氏度值。为此,应用会将该属性设置为 [21, (float)VehicleUnit.CELSIUS, 0, 0];如果 OEM 针对 21 摄氏度建议的值为 70 华氏度,则 VHAL 必须生成一个属性值为 [21, (float)VehicleUnit.CELSIUS, 21.0, 70.0] 的回调。在这种情况下,应用就可以知道汽车界面中的值为 70.0 华氏度。

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

HW_CUSTOM_INPUT

定义一个自定义 OEM 合作伙伴输入事件。希望传播 Android 不支持的事件的原始设备制造商 (OEM) 合作伙伴必须使用此输入事件。它仅由一个含 int32 值的数组组成。Android 属性如下:

  • int32Values[0] 输入代码,用于标识表示此事件的函数。有效事件类型由 CustomInputType.CUSTOM_EVENT_F1 定义,最高可达 CustomInputType.CUSTOM_EVENT_F10。它们表示要由 OEM 合作伙伴定义的自定义事件。
  • int32Values[1]VehicleDisplay 中定义的目标显示屏类型 未与特定显示屏相关联的事件必须发送到 VehicleDisplay#MAIN
  • int32Values[2] 重复计数器,如果为 0,则表示事件不会重复。值 1 或 2 表示此事件重复的次数。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:CustomInputType
单位类型:无
版本:Android 13

HW_KEY_INPUT

此属性用于将硬件输入事件馈送给 Android。

  • int32Values[0] 由 VehicleHwKeyInputAction 定义的操作
  • int32Values[1] 键码,必须使用标准 Android 键码
  • int32Values[2]VehicleDisplay 中定义的目标显示屏 未与特定显示屏相关联的事件必须发送到 VehicleDisplay#MAIN
  • int32Values[3](可选):计数次数。该值必须等于或大于 1。如果省略,Android 会默认为 1。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

HW_KEY_INPUT_V2

此属性用于将硬件输入事件馈送给 Android。

  • int32array[0]VehicleDisplay 定义的目标显示,例如:
    VehicleDisplay::MAIN, VehicleDisplay::INSTRUMENT_CLUSTER, VehicleDisplay::AUX
  • int32array[1] 键码,必须使用标准 Android 键码,例如 KEYCODE_HOMEKEYCODE_BACK
  • int32array[2] VehicleHwKeyInputAction 中定义的操作,例如:
    VehicleHwKeyInputAction::ACTION_UPVehicleHwKeyInputAction::ACTION_UP
  • int32array[3] 事件的重复计数。对于键按下事件,这表示重复按下键的计数,第一次按下时从 0 开始递增计数。对于键释放事件,此值始终为 0。
  • int64array[0] 按下时间,自上次启动以来经过的纳秒数。表示最近一次键按下事件的时间。对于键按下事件,这是此类事件的事件时间。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 14

HW_MOTION_INPUT

此属性用于将硬件输入事件馈送给 Android。

  • int32array[0]VehicleDisplay 定义的目标显示屏,例如:
    VehicleDisplay::MAIN, VehicleDisplay::INSTRUMENT_CLUSTERVehicleDisplay::AUX
  • int32array[1] VehicleHwMotionInputSource 中定义的输入类型,例如:
    VehicleHwMotionInputSource::SOURCE_KEYBOARDVehicleHwMotionInputSource::SOURCE_DPAD
  • int32array[2] VehicleHwMotionInputAction 中定义的操作码,例如:
    VehicleHwMotionInputAction::ACTION_UPVehicleHwMotionInputAction::ACTION_DOWN
  • int32array[3] VehicleHwMotionButtonStateFlag 中定义的按钮状态标志,例如:
    VehicleHwMotionButtonStateFlag::BUTTON_PRIMARYVehicleHwMotionButtonStateFlag::BUTTON_SECONDARY
  • int32array[4] 指针事件计数,N。N 必须是正整数。
  • int32array[5:5+N-1] 指针 ID,长度为 N
  • int32array[5+N:5+2*N-1] 工具类型,长度为 N。如 VehicleHwMotionToolType 中所定义,例如:
    VehicleHwMotionToolType::TOOL_TYPE_FINGERVehicleHwMotionToolType::TOOL_TYPE_STYLUS
  • floatArray[0:N-1] x 数据,长度为 N
  • floatArray[N:2*N-1] y 数据,长度为 N
  • floatArray[2*N:3*N-1] 压力数据,长度为 N
  • floatArray[3*N:4*N-1] 尺寸数据,长度为 N
  • int64array[0] 按下时间,自启动以来经过的纳秒数。表示用户最初按下键来启动一系列位置事件时的时间。对于键按下事件,这是此类事件的事件时间。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 14

HW_ROTARY_INPUT

此属性用于将硬件旋转事件馈送给 Android。

  • int32Values[0] RotaryInputType,用于确定旋转了哪个旋钮。
  • int32Values[1] 定位点(发出咔嗒声)数量,顺时针为正数,逆时针为负数。
  • int32Values[2] VehicleDisplay 中定义的目标显示屏。未与特定显示屏相关联的事件必须发送到 VehicleDisplay#MAIN
  • int32values[3 .. 3 + abs(number of detents) - 2] 连续定位点对之间的纳秒差异(当定位点数量大于 1 或小于 -1 时)。
  • VehiclePropValue.timestamp 旋转发生的时间。如果定位点数量大于 1 或小于 -1,则表示发生第一次旋转定位点的时间。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:RotaryInputType
单位类型:无
版本:Android 13

IGNITION_STATE

表示点火状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleIgnitionState
单位类型:无
版本:Android 13

INFO_DRIVER_SEAT

驾驶员座椅位置 VHAL 实现必须忽略 areaId。使用 VehicleArea:GLOBAL

更改模式:静态
访问模式:READ
枚举类型:VehicleAreaSeat
单位类型:无
版本:Android 13

INFO_EV_BATTERY_CAPACITY

电动汽车或混合动力汽车的标称电池容量。返回电动汽车或混合动力汽车的标称电池容量。这是车辆全新时的总可用电池容量。此值可能与 EV_CURRENT_BATTERY_CAPACITY 不同,因为 EV_CURRENT_BATTERY_CAPACITY 会考虑电池老化、温度依赖性等因素,并返回实时可用电池容量。

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:WH
版本:Android 13

INFO_EV_CONNECTOR_TYPE

此电动汽车可能使用的连接器的列表。如果车辆有多个充电接口,此属性必须返回车辆上至少一个充电接口可用的所有可能的连接器类型。

更改模式:静态
访问模式:READ
枚举类型:EvConnectorType
单位类型:无
版本:Android 13

INFO_EV_PORT_LOCATION

此属性必须使用 PortLocationType 枚举来传达电动汽车上的充电接口的位置。如果车辆有多个接口,此属性必须返回可实现最快充电速度的接口。如需传达所有接口的位置,请使用 INFO_MULTI_EV_PORT_LOCATIONS

电动汽车充电接口位置:静态
访问模式:读取
枚举类型:PortLocationType
单位类型:无
版本:Android 13

INFO_EXTERIOR_DIMENSIONS

车辆外部尺寸:

  • 高度:int32Values[0]
  • 长度:int32Values[1]
  • 宽度:int32Values[2]
  • 宽度(包括车镜):int32Values[3]
  • 轴距(包括车镜):int32Values[4]
  • 前轮距:int32Values[5]
  • 后轮距:int32Values[6]
  • 路缘到路缘转弯直径:int32Values[7]

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:MILLIMETER
版本:Android 13

INFO_FUEL_CAPACITY

车辆的燃料容量(以毫升为单位)。此属性必须传达车辆中可存储的最大燃料量(以毫升为单位)。此属性不适用于电动汽车 (EV)。也就是说,如果 INFO_FUEL_TYPE 仅包含 FuelType::FUEL_TYPE_ELECTRIC,则不得实现 INFO_FUEL_CAPACITY。对于电动汽车,请实现 INFO_EV_BATTERY_CAPACITY

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:MILLILITER
版本:Android 13

INFO_FUEL_DOOR_LOCATION

油箱盖位置。此属性必须传达车辆油箱盖的位置。此属性不适用于电动汽车。也就是说,如果 INFO_FUEL_TYPE 仅包含 FuelType::FUEL_TYPE_ELECTRIC,则不得实现此属性。对于电动汽车,请实现 INFO_EV_PORT_LOCATIONINFO_MULTI_LOCATIONS

更改模式:静态
访问模式:READ
枚举类型:PortLocationType
单位类型:无
版本:Android 13

INFO_FUEL_TYPE

车辆可能使用的燃料的列表。必须仅在车辆可插电充电时才包含 FuelType::FUEL_TYPE_ELECTRIC。例如,全混合动力汽车 (FHEV) 不得将 FuelType::FUEL_TYPE_ELECTRIC 作为 INT32_VEC 值包含在内;INFO_FUEL_TYPE 可以这样填充。

int32Values = { FuelType::FUEL_TYPE_UNLEADED }
另一方面,插电式混合动力汽车 (PHEV) 是插电式可充电汽车,应包含 FuelType::FUEL_TYPE_ELECTRIC 作为 INFO_FUEL_TYPE 的 INT32_VEC 值;INFO_FUEL_TYPE 可以这样填充:int32Values = { FuelType::FUEL_TYPE_UNLEADED, FuelType::FUEL_TYPE_ELECTRIC }

更改模式:静态
访问模式:READ
枚举类型:FuelType
单位类型:无
版本:Android 13

INFO_MAKE

车辆制造商。此属性必须传达车辆的公开品牌名称。

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

INFO_MODEL

车辆型号。此属性必须传达车辆的公开型号名称。

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

INFO_MODEL_YEAR

车辆的车型年份,采用公历的“YYYY”格式。

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:YEAR
版本:Android 13

INFO_MULTI_EV_PORT_LOCATIONS

多个电动汽车充电接口位置。如果车辆有多个电动汽车充电接口,请实现此属性。接口位置在 PortLocationType 中定义。例如:一辆车在前左侧有一个接口,在后左侧也有一个接口:

int32Values[0] = PortLocationType::FRONT_LEFT int32Values[1] = PortLocationType::REAR_LEFT

如果车辆只有一个端口,此属性的值应列出一个元素。如需说明一个接口位置,请参阅 INFO-EV-PORT-LOCATION

.

更改模式:静态
访问模式:READ
枚举类型:PortLocationType
单位类型:无
版本:Android 13

INFO_VIN

汽车的车辆识别码 (VIN)。

更改模式:静态
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

INITIAL_USER_INFO

定义初始化期间要使用的 Android 用户。Android 系统在初始化时会调用此属性,并让 HAL 定义应启动哪个 Android 用户。此请求是通过设置 VehiclePropValue(由 InitialUserInfoRequest 定义)发出的,并且 HAL 必须通过属性更改事件(由 InitialUserInfoResponse 定义)进行响应。如果 HAL 在 Android 系统定义的时间后没有响应,Android 系统会继续执行,就像 HAL 返回了操作 InitialUserInfoResponseAction:DEFAULT 的响应一样。例如,在首次启动时,请求可以是:

int32[0] 42  // request id (arbitrary number set by Android system)
int32[1] 1   // InitialUserInfoRequestType::FIRST_BOOT
int32[2] 0   // id of current user (usersInfo.currentUser.userId)
int32[3] 1   // flag of current user (usersInfo.currentUser.flags = SYSTEM)
int32[4] 1   // number of existing users (usersInfo.numberUsers);
int32[5] 0   // user #0  (usersInfo.existingUsers[0].userId)
int32[6] 1   // flags of user #0  (usersInfo.existingUsers[0].flags)
如果 HAL 响应为创建了名为“所有者”的管理员用户,响应将如下所示:
int32[0] 42  // must match the request id from the request
int32[1] 2   // action = InitialUserInfoResponseAction::CREATE
int32[2] -10000  // userToSwitchOrCreate.userId (not used as user will be created)
int32[3] 8   // userToSwitchOrCreate.flags = ADMIN string: "||Owner" // userLocales + separator + userNameToCreate
字符串值表示多个值,以“||”分隔。第一个值是要创建的用户的(可选)系统语言区域(在本例中为空,表示使用 Android 默认值),而第二个值是要创建的用户的(可选)名称(当响应类型为 InitialUserInfoResponseAction:CREATE 时)。例如,如需使用 en-US 和 pt-BR 语言区域创建同一个“所有者”用户,响应的字符串值为 en-US,pt-BR||Owner。因此,语言区域和名称中都不能包含两条竖线 (||),但可以使用单条竖线 (|)。

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

J 到 R

LANE_CENTERING_ASSIST_COMMAND

车道居中辅助 (LCA) 命令。此类命令用于启用和暂停 LCA。来自 LaneCenteringAssistCommand 的命令 ACTIVATE 发出时,LANE_CENTERING_ASSIST_STATE 必须设置为 LaneCenteringAssistState#ACTIVATION_REQUESTED。当 ACTIVATE 命令成功时,LANE_CENTERING_ASSIST_STATE 必须设置为 LaneCenteringAssistState#ACTIVATED。当来自 LaneCenteringAssistCommand 的命令 DEACTIVATE 成功时,LANE_CENTERING_ASSIST_STATE 必须设置为 LaneCenteringAssistState#ENABLED

对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues,除非同时支持 LaneCenteringAssistCommand 的所有枚举值。如果此属性因 LCA 处于停用状态(例如 LANE_CENTERING_ASSIST_ENABLED 为 false)而不可用,则必须返回 StatusCode#NOT_AVAILABLE_DISABLED。如果实现了 LANE_CENTERING_ASSIST_STATE 且状态设置为 ErrorState 值,则此属性必须返回与 ErrorState 值一致的 StatusCode。例如,如果 LANE_CENTERING_ASSIST_STATE 设置为 ErrorState#NOT_AVAILABLE_SPEED_LOW,则此属性必须返回 StatusCode#NOT_AVAILABLE_SPEED_LOW

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:LaneCenteringAssistCommand
单位类型:无
版本:Android 14

LANE_CENTERING_ASSIST_ENABLED

启用或停用车道居中辅助 (LCA)。设置为 true 表示启用 LCA,设置为 false 表示停用 LCA。当 LCA 处于启用状态时,车辆中的 ADAS 系统应处于开启状态并等待来自驾驶员的启用信号。此功能启用后,ADAS 系统应驾驶车辆,使其保持在当前车道中间行驶。

这与车道保持辅助 (LKA) 不同,后者用于监测驾驶员是否无意中向车道标线偏移或越过车道标线。如果检测到车道意外偏离,系统会应用转向控制让车辆返回到当前车道。一般来说,LANE_CENTERING_ASSIST_ENABLED 应始终返回 true 或 false。 如果该功能因某种临时状态(例如车速过慢或过快)而不可用,则必须通过 LANE_CENTERING_ASSIST_STATE 属性中的 ErrorState 值传达此信息。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

LANE_CENTERING_ASSIST_STATE

车道居中辅助 (LCA) 状态。返回 LCA 的当前状态。此属性必须始终返回 LaneCenteringAssistStateErrorState 中定义的有效状态。它不得通过 StatusCode 显示错误,而必须改用受支持的错误状态。

如果 LCA 包含车道偏离警告,这些警告必须通过车道偏离警告 (LDW) 属性显示。

对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 LaneCenteringAssistState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:LaneCenteringAssistState/ErrorState
单位类型:无
版本:Android 14

LANE_DEPARTURE_WARNING_ENABLED

启用或停用车道偏离警告 (LDW)。设置为 true 表示启用 LDW,设置为 false 表示停用 LDW。当 LDW 处于启用状态时,车辆中的 ADAS 系统应保持开启,并监测车辆是否接近或越过车道线;如果是,则会发出警告。

一般来说,LANE_DEPARTURE_WARNING_ENABLED 应始终返回 true 或 false。 如果该功能因某种临时状态(例如车速过慢或过快)而不可用,则必须通过 LANE_DEPARTURE_WARNING_STATE 属性中的 ErrorState 值传达此信息。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

LANE_DEPARTURE_WARNING_STATE

车道偏离警告 (LDW) 状态。返回 LDW 的当前状态。此属性必须始终返回 LaneDepartureWarningStateErrorState 中定义的有效状态。它不得通过 StatusCode 显示错误,而必须改用受支持的错误状态。

对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 LaneDepartureWarningState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:LaneDepartureWarningState/ErrorState
单位类型:无
版本:Android 14

LANE_KEEP_ASSIST_ENABLED

启用或停用车道保持辅助 (LKA)。设置为 true 表示启用 LKA,设置为 false 表示停用 LKA。当 LKA 处于启用状态时,车辆中的 ADAS 系统应保持开启,并监测驾驶员是否无意中向车道标线偏移或越过车道标线。如果检测到车道意外偏离,系统会应用转向控制让车辆返回到当前车道。这与车道居中辅助 (LCA) 不同,LCA 在启用后会应用连续转向控制,让车辆保持在当前车道中间行驶。

一般来说,LANE_KEEP_ASSIST_ENABLED 应始终返回 true 或 false。 如果该功能因某种临时状态(例如车速过慢或过快)而不可用,则必须通过 LANE_KEEP_ASSIST_STATE 属性中的 ErrorState 值传达此信息。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

LANE_KEEP_ASSIST_STATE

车道保持辅助 (LKA) 状态。返回 LKA 的当前状态。此属性必须始终返回 LaneKeepAssistStateErrorState 中定义的有效状态。它不得通过 StatusCode 显示错误,而必须改用受支持的错误状态。

如果 LKA 包含在应用转向修正之前发出车道偏离警告,这些警告必须通过车道偏离警告 (LDW) 属性显示。

对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 LaneKeepAssistState(包括不推荐的 OTHER)和 ErrorState 的所有状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:LaneKeepAssistState/ErrorState
单位类型:无
版本:Android 14

LOCATION_CHARACTERIZATION

对用于计算位置的输入内容的特性描述。此属性必须指明:系统在计算通过 GNSS HAL 与 Android 共享的车辆位置信息时会考虑哪些数据和传感器输入(如果有)。

该值必须返回一组位标志。位标志在 LocationCharacterization 中定义。该值还必须在其位标志集合中确切包含 DEAD_RECKONEDRAW_GNSS_ONLY 之一。

如果不支持此属性,则假定没有其他传感器输入会融合到通过 GNSS HAL 提供的 GNSS 更新中。除非通过 GNSS HAL 接口另行指定。

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 14

MIRROR_AUTO_FOLD_ENABLED

表示车镜自动折叠功能的属性。当启用自动折叠车辆侧视镜的功能(例如当驾驶员离开并锁车后,车镜自动向内折叠)时,此属性为 true。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

MIRROR_AUTO_TILT_ENABLED

表示车镜自动倾斜功能的属性。当启用自动倾斜车辆侧视镜的功能(例如当驾驶员倒车时,车镜自动向下倾斜)时,此属性为 true。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

MIRROR_FOLD

车镜折叠。true 表示车镜已折叠。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

MIRROR_LOCK

车镜锁定。true 表示车镜位置已锁定且不可更改。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

MIRROR_Y_MOVE

车镜在 Y 轴上的移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示车镜在向右倾斜时的最快移动速度。minInt32Value 表示车镜在向左倾斜时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。车镜达到位置极限后,该值必须重置为 0。如果 MIRROR_Y_MOVE 的值目前为 0,则表示目前没有发生任何移动。

此属性不采用任何特定单位,而是采用相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

MIRROR_Y_POS

车镜在 Y 轴上的位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示车镜完全向左倾斜。

此值必须为非正值。maxInt32Value 表示车镜完全向右倾斜。此值必须是非负值。0 表示镜子没有向任一方向倾斜。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于左极限位置和右极限位置之间的过渡状态。

此属性不采用任何特定单位,而是采用相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

MIRROR_Z_MOVE

车镜在 Z 轴上的移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示车镜在向上倾斜时的最快移动速度。minInt32Value 表示车镜在向下倾斜时的最快移动速度。绝对值越大(无论是正值还是负值),表示移动速度就越快。车镜达到位置极限后,该值必须重置为 0。如果 MIRROR_Z_MOVE 的值目前为 0,则表示目前没有发生任何移动。

此属性不采用任何特定单位,而是采用相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

MIRROR_Z_POS

车镜在 Z 轴上的位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示车镜完全向下倾斜。此值必须是非正值。maxInt32Value 表示车镜完全向上倾斜。此值必须是非负值。0 表示车镜没有向任一方向倾斜。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于完全向下位置和完全向上位置之间的过渡状态。

此属性不采用任何特定单位,而是采用相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

NIGHT_MODE

true 表示夜间模式传感器检测到车厢环境光线较弱。例如,平台可以利用此信息启用适当的界面,以便在黑暗或弱光环境中获得更好的视效。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

OBD2_FREEZE_FRAME

报告在故障发生并被检测到时可用的 OBD2 传感器值的快照。提供的 configArray 的含义必须与为 OBD2_LIVE_FRAME 定义的含义相同

此属性的值的解读方式与 OBD2_LIVE_FRAME 类似,只不过 stringValue 字段可能包含非空的诊断问题排查代码 (DTC)。

此属性的 IVehicle#get 请求必须为 int64Values[0] 提供值。系统会将其解读为要检索的冻结帧的时间戳。可以通过 IVehicle#get 的 OBD2_FREEZE_FRAME_INFO 获取时间戳列表

如果在给定时间戳处没有可用的冻结帧,实现必须返回 NOT_AVAILABLE 响应。由于车辆的冻结帧存储空间可能有限,因此即使最近通过 OBD2_FREEZE_FRAME_INFO 获取了关联的时间戳,帧请求也可能会以 NOT_AVAILABLE 响应。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

OBD2_FREEZE_FRAME_CLEAR

清除冻结帧。报告在故障发生并被检测到时可用的 OBD2 传感器值的快照。提供的 configArray 的含义必须与为 OBD2_LIVE_FRAME 定义的含义相同

此属性的值的解读方式与 OBD2_LIVE_FRAME 类似,只不过 stringValue 字段可能包含非空的诊断问题排查代码 (DTC)。

此属性的 IVehicle#get 请求必须为 int64Values[0] 提供值。系统会将其解读为要检索的冻结帧的时间戳。可以通过 IVehicle#get 的 OBD2_FREEZE_FRAME_INFO 获取时间戳列表

如果在给定时间戳处没有可用的冻结帧,实现必须返回 NOT_AVAILABLE 响应。由于车辆的冻结帧存储空间可能有限,因此即使最近通过 OBD2_FREEZE_FRAME_INFO 获取了关联的时间戳,帧请求也可能会以 NOT_AVAILABLE 响应

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

OBD2_FREEZE_FRAME_INFO

此属性描述了存储在车辆内存中且可通过 OBD2_FREEZE_FRAME 检索的当前冻结帧。这些值的解读如下。int64Values 的每个元素都必须是检测到故障代码并存储相应冻结帧的时间戳,并且每个此类元素都可以用作 OBD2_FREEZE_FRAME 的键来检索相应的冻结帧。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

OBD2_LIVE_FRAME

报告可用 OBD2 传感器的当前(实时)值的快照。configArray 的设置如下所示:

  • configArray[0] 供应商特定的整数值传感器的数量
  • configArray[1] 供应商特定的浮点值传感器的数量

此属性的值应按以下示例进行解读。考虑 configArray = {2,3} int32Values 必须是一个包含 Obd2IntegerSensorIndex.LAST_SYSTEM_INDEX 和两个元素(即 33 个元素)的向量。floatValues 必须是一个包含 Obd2FloatSensorIndex.LAST_SYSTEM_INDEX 和三个元素(即 73 个元素)的向量。

每个帧都可能包含不同的传感器值子集,既有系统提供的传感器,又有特定供应商的传感器。为了支持这一点,属性值的字节元素会用作位掩码。字节数必须足以表示可能的传感器总数(在本例中,14 个字节表示 106 个可能的值)。它应被读取为连续的位掩码,以便每个位都表示帧中是否存在传感器,从与 int32Values 大小相同数量的位开始,紧接着读取与 floatValues 大小相同数量的位。

例如,如果 bytes[0] = 0x4C (0b01001100),则表示:

  • int32Values[0 and 1] 不是有效的传感器值
  • int32Values[2 and 3] 是有效的传感器值
  • int32Values[4 and 5] 不是有效的传感器值
  • int32Values[6] 是有效传感器值
  • int32Values[7] 不是有效的传感器值
  • int32Values[0 and 1] 不是有效的传感器值
  • int32Values[2 and 3] 是有效的传感器值
  • int32Values[4 and 5] 不是有效的传感器值
  • int32Values[6] 是有效传感器值
  • int32Values[7] 不是有效的传感器值

如果 bytes[5] = 0x61 (0b01100001),则:

  • int32Values[32] 是有效的传感器值
  • floatValues[0 thru 3] 是无效的传感器值
  • floatValues[4 and 5] 是有效的传感器值
  • floatValues[6] 不是有效的传感器值。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

ON_CHANGE

更改模式:
访问模式:READ_WRITE/READ
枚举类型: VehicleLightSwitch
单位类型:无
版本:Android 13

PARKING_BRAKE_AUTO_APPLY

自动应用驻车制动。如果为 true,此属性表示汽车的自动驻车制动功能已启用。false 表示汽车的自动驻车制动功能已停用。此属性经常与 PARKING_BRAKE_ON 混淆。区别在于 PARKING_BRAKE_ON 表示实际驻车制动处于开启还是关闭状态;而 PARKING_BRAKE_AUTO_APPLY 表示自动驻车制动功能处于启用还是停用状态,并不描述实际驻车制动的当前状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

PARKING_BRAKE_ON

驻车制动状态。如果此属性为 true,表示汽车的驻车制动已启用。false 表示汽车的驻车制动处于解除状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

PER_DISPLAY_BRIGHTNESS

此属性用于表示单独受控制的显示屏的亮度。某些汽车有一个或多个亮度可单独控制的显示屏,此属性用于告知每个乘客显示屏的亮度。如果所有显示屏的亮度都一起受控,汽车必须使用 DISPLAY_BRIGHTNESS

应仅实现 PER_DISPLAY_BRIGHTNESSPER_DISPLAY_BRIGHTNESS 中的一项。如果这两者都可用,AAOS 会使用 PER_DISPLAY_BRIGHTNESS

显示屏端口唯一性地标识设备上针对显示屏输出的实体连接器,范围从 0 到 255。

  • int32Values[0] 显示屏端口
  • int32Values[1] 亮度

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 14

PERF_ODOMETER

车辆的当前里程表值。

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:KILOMETER
版本:Android 13

PERF_REAR_STEERING_ANGLE

车辆的自行车模型后轮转向角度。角度以度为单位。左侧为负数。 此属性与方向盘的角度无关。此属性必须传达后轮相对于车辆的角度,而不是方向盘的角度。

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:DEGREES
版本:Android 13

PERF_STEERING_ANGLE

车辆的自行车模型前轮转向角度。角度以度为单位。左侧为负数。此属性与方向盘的角度无关。此属性必须传达前轮相对于车辆的角度,而不是方向盘的角度。

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:DEGREES
版本:Android 13

PERF_VEHICLE_SPEED

车辆的速度。当车辆前进时,该值必须为正值;当车辆倒车时,该值必须为负值。此值与档位值(CURRENT_GEARGEAR_SELECTION)无关。例如,如果 GEAR_SELECTIONGEAR_NEUTRAL,则 PERF_VEHICLE_SPEED 在车辆前进时为正数,在车辆倒车时为负数,在车辆不动时为零。

更改模式:CONTINUOUS
访问模式:READ
单位类型:无
单位类型:VehicleUnit:METER_PER_SEC
版本:Android 13

PERF_VEHICLE_SPEED_DISPLAY

显示屏上车辆的速度,某些汽车的速度表上显示的速度会比实际速度略慢。

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:METER_PER_SEC
版本:Android 13

POWER_POLICY_GROUP_REQ

定义了一项请求,用于设置电源策略组,以便在每次电源状态转换时决定默认电源策略。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

POWER_POLICY_REQ

定义应用电源策略的请求。VHAL 会设置此属性以更改汽车电源策略。汽车电源策略服务会订阅此属性,并实际更改电源策略。该请求是通过使用在 /vendor/etc/automotive/power_policy.xml 中定义的电源策略的 ID 设置 VehiclePropValue 来发出的。如果未定义给定 ID,汽车电源策略服务会忽略该请求,并保持当前电源策略。

string: "sample_policy_id" // power policy ID

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

POWER_POLICY_GROUP_REQ

定义了一项请求,用于设置电源策略组,以便在每次电源状态转换时决定默认电源策略。VHAL 使用电源策略组的 ID 设置此属性,以设置在电源状态转换时应用的默认电源策略。电源策略组在 /vendor/etc/power_policy.xml 中定义。如果未定义给定 ID,汽车电源策略服务会忽略该请求。汽车电源策略服务会订阅此属性并设置电源策略组。当系统电源状态发生变化且有针对新电源状态的有效映射电源策略时,系统会实际应用电源策略。

string: "sample_policy_group_id" // power policy group ID

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

RANGE_REMAINING

剩余续航里程。剩余燃料和电量可行驶的里程数(以米为单位)。剩余续航里程应考虑车辆中的所有能量来源。例如,混动车的续航里程是基于燃油和电池的续航里程之和。此属性定义为 VehiclePropertyAccess.READ_WRITE,因为导航应用如果能根据后续路线得到更准确的估算值,便可能会更新续航里程。此属性可由 OEM 自行决定实现为仅 VehiclePropertyAccess.READ

更改模式:CONTINUOUS
访问模式:READ_WRITE
枚举类型:无
单位类型:VehicleUnit:METER
版本:Android 13

READING_LIGHTS_STATE

返回阅读灯的当前状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

READING_LIGHTS_SWITCH

用于控制阅读灯的开关。如果灯开着是因为门打开了或因为语音指令,则可能与 READING_LIGHTS_STATE 不同。例如,当开关处于关闭自动位置时。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

REAR_FOG_LIGHTS_STATE

返回后雾灯的当前状态。只能实现 FOG_LIGHTS_STATEREAR_FOG_LIGHTS_STATE 之一。请参见 FOG_LIGHTS_STATE

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 13

REAR_FOG_LIGHTS_SWITCH

用户所需的设置。必须实现 FOG_LIGHTS_SWITCHREAR_FOG_LIGHTS_SWITCH 中的一个。如需了解详情,请参阅 FOG_LIGHTS_SWITCH。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 13

REMOVE_USER

在某个 Android 用户被移除后由 Android 系统调用。HAL 可以使用此属性来移除相应的用户。这是只写调用。Android 系统不会预期 HAL 发来回复。因此,此请求不应失败。如果无法移除相应 HAL 用户,则 HAL 应将其标记为非活跃状态或通过另一方式恢复。

该请求是通过使用 RemoveUserRequest 定义的内容设置 VehiclePropValue 来发出的。例如,如果系统有 3 位用户(0、10 和 11),并且移除了用户 11,请求如下所示:

  • int32[0] 42 // 请求 ID
  • int32[1] 11 //(被移除用户的 Android 用户 ID)
  • int32[2] 0 //(被移除用户的 Android 用户标志)
  • int32[3] 10 // 当前用户
  • int32[4] 0 // 当前用户标志(无)
  • int32[5] 2 // 用户数量
  • int32[6] 0 // 第一位用户(用户 0)
  • int32[7] 0 // 第一位用户标志(无)
  • int32[8] 10 // 第二位用户(用户 10)
  • int32[9] 0 // 第二位用户标志(无)

更改模式:STATIC
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

S 到 Z

SEAT_AIRBAG_ENABLED

表示在被触发(例如发生碰撞)时,启用和停用座椅的安全气囊开启功能的功能。如果为 true,则表示座椅的安全气囊已启用,如果触发,则会展开。如果为 true,则座椅的安全气囊处于停用状态,在任何情况下都不会展开。此属性未指示安全气囊是否已展开。

出于法规或安全考虑,此属性可设置为 VehiclePropertyAccess.READ(只读)。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_BACKREST_ANGLE_1_MOVE

座椅靠背角度 1 移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示座椅靠背向前倾斜时的最快移动速度。minInt32Value 表示座椅靠背在向后倾斜时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅靠背达到位置极限后,该值必须重置为 0。如果 SEAT_BACKREST_ANGLE_1_MOVE 的值为 0,则表示没有发生任何移动。

此属性采用相对移动速度的指定范围表示。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_BACKREST_ANGLE_1_POS

座椅靠背角度 1 位置。靠背角度 1 是指离座椅底部最近的致动器。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示座椅靠背相对于座椅底部的致动器的完全放倒位置。maxInt32Value 表示座椅靠背相对于座椅底部的致动器的最直立或最前方位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示座椅处于完全放倒位置与直立和向前位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_BACKREST_ANGLE_2_MOVE

座椅靠背角度 2 移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅靠背向前倾斜时的最快移动速度。minInt32Value 表示座椅靠背在向后倾斜时的最快移动速度。

绝对值越大(正值或负值)表示移动速度越快。一旦座椅靠背达到位置限制,该值必须重置为 0。如果 SEAT_BACKREST_ANGLE_2_MOVE 的值当前为 0,则表示未发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:不适用 单位类型:不适用
版本:Android 13

SEAT_BACKREST_ANGLE_2_POS

座椅靠背角度 2 位置。靠背角度 2 是从座椅底部向上数的下一个执行器。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示座椅靠背在座椅底部执行器之后的下一个执行器的完全放倒位置(如需了解详情,请参阅 SEAT_BACKREST_ANGLE_1_POS)。maxInt32Value 表示与座椅靠背中的下一个致动器(相对于座椅底部的致动器)的最直立和最前的位置(如需了解详情,请参阅 SEAT_BACKREST_ANGLE_1_POS)。

如果值介于 minInt32ValuemaxInt32Value 之间,表示座椅处于完全放倒、直立和向前位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_BELT_BUCKLED 卡

系好安全带。true 表示皮带已系好。写入权限表示自动座椅安全扣功能。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_BELT_HEIGHT_MOVE

安全带高度移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示安全带肩部锚点向上移动时的最快移动速度。minInt32Value 表示安全带肩部锚点向下移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。安全带达到位置极限后,该值必须重置为 0。如果 SEAT_BELT_HEIGHT_MOVE 的值为 0,则表示没有任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_BELT_HEIGHT_POS

安全带高度位置。调整肩带定位点。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示安全带的肩部锚点处于最低位置。maxInt32Value 表示安全带的肩部锚点处于最高位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最低位置和最高位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_CUSHION_SIDE_SUPPORT_MOVE

表示座椅靠垫侧支撑的移动方向和速度的属性。

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座垫侧支撑在变宽时的最快移动速度(例如,支撑减少)。minInt32Value 表示座垫侧支撑在变窄(例如,支撑增加)时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座垫侧支撑达到位置极限后,该值必须重置为 0。如果 SEAT_CUSHION_SIDE_SUPPORT_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:不适用
单元类型:不适用
版本:Android 14

SEAT_CUSHION_SIDE_SUPPORT_POS

表示座椅的侧面(底部靠垫侧面)支撑位置的属性。

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座垫侧面支撑处于最宽的位置(例如,支撑力最小)。minInt32Value 表示座垫侧边支撑处于最薄的位置(例如,支撑力最强)。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最窄位置和最宽位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 <covehiclepropertyaccess.read< code="">。</covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_DEPTH_MOVE

座椅深度移动。

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅在变深时的最大移动速度。minInt32Value 表示座椅在变浅时的最大移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅靠背达到位置极限后,该值必须重置为 0。如果 SEAT_DEPTH_MOVE 的值目前为 0,则表示没有任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

SEAT_DEPTH_POS

座椅深度位置。设置座椅深度,即从靠背到座椅前缘的距离。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示座椅处于最浅的位置(例如,座垫前缘与座椅后端之间的距离最短的位置)。

maxInt32Value 表示座椅处于最深位置(例如,座垫前缘与座椅后端之间的距离最大的位置)。

minInt32ValuemaxInt32Value 之间的值表示最浅位置和最深位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 <covehiclepropertyaccess.read< code="">..</covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_EASY_ACCESS_ENABLED

表示座椅便捷进入功能的属性。如果为 true,系统会自动调整座椅,以便乘客更轻松地上下车。每个区域 ID 都必须映射到用户尝试借助便捷进入/退出功能进入/退出的座椅。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 <covehiclepropertyaccess.read< code="">。</covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_FOOTWELL_LIGHTS_STATE

表示座椅脚井灯状态的属性。SEAT_FOOTWELL_LIGHTS_STATE 反映了灯具在任何时间点的当前状态。这与 SEAT_FOOTWELL_LIGHTS_SWITCH 的功能不同,后者表示控制灯的开关的位置。

因此, SEAT_FOOTWELL_LIGHTS_STATE 可能与 SEAT_FOOTWELL_LIGHTS_SWITCH 的值(例如 SEAT_FOOTWELL_LIGHTS_SWITCH=AUTOMATICSEAT_FOOTWELL_LIGHTS_SWITCH=ON)不匹配。

仅当 SEAT_FOOTWELL_LIGHTS_STATE 的值可能与 CABIN_LIGHTS_STATE 的值不同时,才应实现此属性。

对于每个受支持的区域 ID,必须定义 VehicleAreaConfig#supportedEnumValues,除非同时支持 VehicleLightState 的所有枚举值。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 14

SEAT_FOOTWELL_LIGHTS_SWITCH

表示座椅脚部空间灯开关的属性。SEAT_FOOTWELL_LIGHTS_SWITCH 表示控制灯的开关的位置。这与 SEAT_FOOTWELL_LIGHTS_STATE 的功能不同,后者反映的是任何时间点的灯具当前状态。因此,SEAT_FOOTWELL_LIGHTS_SWITCH 可能与 SEAT_FOOTWELL_LIGHTS_STATE 的值(例如 SEAT_FOOTWELL_LIGHTS_SWITCH=AUTOMATICSEAT_FOOTWELL_LIGHTS_SWITCH=ON)不匹配。

仅当 SEAT_FOOTWELL_LIGHTS_SWITCH 的值可能与 CABIN_LIGHTS_SWITCH 的值不同时,才应实现此属性。

对于每个受支持的区域 ID,必须定义 VehicleAreaConfig#supportedEnumValues,除非同时支持 VehicleLightSwitch 的所有枚举值。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单元类型:不适用
版本:Android 13

SEAT_FORE_AFT_MOVE

座椅前后移动。此属性会沿座椅朝向的方向前/后移动整个座椅。

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅向前移动时的最快移动速度。minInt32Value 表示座椅向后移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅达到位置极限后,该值必须重置为 0。如果 SEAT_FORE_AFT_MOVE 的值为 0,则表示未发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_FORE_AFT_POS

座椅前后位置。设置座椅的前后位置。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示座位位于最靠后的线性位置。maxInt32Value 表示座椅处于最前方的线性位置。如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最靠近位置和最远位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_ANGLE_MOVE

头枕角度移动。每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value 都必须定义。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅靠背处于垂直或向前位置时的最大移动速度。minInt32Value 表示座椅头枕在向浅位移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。当座椅的头枕达到位置限制时,该值必须重置为 0。如果 SEAT_HEADREST_ANGLE_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 只能将其实现为 <covehiclepropertyaccess.read<code="">。</covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_ANGLE_POS

头枕角度位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示头枕处于完全放倒位置。maxInt32Value 表示头枕处于最直立且最向前的位置。

minInt32ValuemaxInt32Value 之间的值表示完全倾斜位置与大多数直立位置和前方位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_FORE_AFT_MOVE

头枕可前后移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅头枕向前移动时的最快移动速度。minInt32Value 表示座椅头枕向后移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅头枕达到位置极限后,该值必须重置为 0。如果 SEAT_HEADREST_FORE_AFT_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_FORE_AFT_POS

头枕的前后位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示头枕处于最靠后的线性位置。 maxInt32Value 表示头枕处于最前方的线性位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于前进位置和后退位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_HEIGHT_MOVE

头枕高度移动。每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value 都必须定义。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅头枕在向上移动时的最快移动速度。minInt32Value 表示座椅头枕在向下移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅头枕达到位置极限后,该值必须重置为 0。如果 SEAT_HEADREST_HEIGHT_MOVE 的值为 0,则表示未发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_HEIGHT_POS

已废弃)头枕高度位置。

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEADREST_HEIGHT_POS_V2

头枕的高度位置。设置受支持座椅的头枕高度。 VehiclePropConfig.areaConfigs 指定支持的座位。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示头枕处于最低位置。maxInt32Value 表示头枕处于最高位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最低位置和最高位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_HEIGHT_MOVE

座椅高度移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅上移时座椅的最大移动速度。

minInt32Value 表示座椅下移时的最大移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅达到位置极限后,该值必须重置为 0。如果 SEAT_HEIGHT_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_HEIGHT_POS

座椅高度位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示座位处于最低位置。maxInt32Value 表示座椅处于最高位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最低位置和最高位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_LUMBAR_FORE_AFT_MOVE

腰椎前后移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示座椅腰部支撑在向前移动时的最快移动速度。minInt32Value 表示座椅腰部支撑在向后移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。 座椅的腰部支撑达到位置极限后,该值必须重置为 0。 如果 SEAT_LUMBAR_FORE_AFT_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_LUMBAR_FORE_AFT_POS

木材前后位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

minInt32Value 表示腰部支撑处于最靠后的位置(例如,支撑力最弱的位置)。maxInt32Value 表示腰部支撑处于最前位置(例如,支撑力最强的位置)。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于前置位置和后置位置之间的过渡状态。

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问权限类型:READ_WRITE/READ
枚举类型:不适用
单元类型:不适用
版本:Android 13

SEAT_LUMBAR_SIDE_SUPPORT_MOVE

腰部侧边支撑移动。每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value 都必须定义。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。

maxInt32Value 表示在变宽时,座椅腰侧支撑物的最大移动速度。minInt32Value 表示座椅腰部侧支撑在变薄时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅的腰部侧支撑达到位置极限后,该值必须重置为 0。如果 SEAT_LUMBAR_SIDE_SUPPORT_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问权限类型:READ_WRITE/READ
枚举类型:不适用
单元类型:不适用
版本:Android 13

SEAT_LUMBAR_SIDE_SUPPORT_POS

腰部侧支撑位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示腰部侧支撑处于最薄的位置(例如,提供最强支撑)。maxInt32Value 表示腰部侧支撑处于最宽的位置(例如,支撑力最小)。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最窄位置和最宽位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问类型:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_LUMBAR_VERTICAL_MOVE

表示座椅腰部支撑的垂直移动方向和速度的属性。

必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示腰部支撑正在以最快的向上速度移动。minInt32Value 表示腰部支撑正在以最快的速度向下移动。

绝对值越大(无论是正值还是负值),表示移动速度就越快。一旦座椅靠垫侧支撑物达到位置限制,该值必须重置为 0。如果 SEAT_LUMBAR_VERTICAL_MOVE 的值为 0,则表示没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:不适用
单元类型:不适用
版本:Android 14

SEAT_LUMBAR_VERTICAL_POS

表示座椅腰部支撑垂直位置的属性。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示腰部支撑的最高位置。minInt32Value 表示腰部支撑物的最低位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于最低位置和最高位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_MEMORY_SELECT

此参数用于选择用于选择座椅位置的内存预设。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 始终为 0,并且 maxInt32Value 会确定可用的座椅预设内存槽数(例如 numSeatPresets - 1)。例如,如果驾驶员座位具有三个内存预设,则 maxInt32Value 为二。当用户选择某个预设时,系统会设置所需的预设编号(0、1 或 2)。

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

SEAT_MEMORY_SET

借助此设置,用户可以将当前座椅位置设置保存到所选的预设槽中。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32ValueminInt32Value 必须为 0,并且每个座位位置的 maxInt32Value 必须与 SEAT_MEMORY_SELECTmaxInt32Value 一致

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

SEAT_OCCUPANCY

指示特定座位是否有人坐(汽车会尽可能确定)。有效值来自 VehicleSeatOccupancyState 枚举。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleSeatOccupancyState
单位类型:无
版本:Android 13

SEAT_TILT_MOVE

座椅倾斜移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示座椅前缘向上移动时的最快移动速度。minInt32Value 表示座椅前缘向下移动时的最快移动速度。

绝对值越大(无论是正值还是负值),表示移动速度就越快。座椅底部达到位置极限后,该值必须重置为 0。如果 SEAT_TILT_MOVE 的值目前为 0,则表示没有任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

SEAT_TILT_POS

座椅倾斜位置。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示座椅底部处于最低角度位置。这对应于座椅前缘相对于座椅后端的可能最低位置。maxInt32Value 表示座椅底部处于最高角度位置。这对应于座椅前缘相对于座椅后端的最高位置。

minInt32ValuemaxInt32Value 之间的值表示最低位置和最高位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

SEAT_WALK_IN_POS

表示用于指示座椅当前的步入位置的属性。minInt32Value 表示正常座椅位置。minInt32Value 必须为 0。maxInt32Value 表示座椅处于完全可通行位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于正常位置和免下车位置之间的过渡状态。

此属性表示为相对位置的指定范围。

区域 ID 必须与启用免下车功能时实际移动的座椅相符,而不是乘客将要坐的预期座椅。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以

将其实现为 VehiclePropertyAccess.READ。

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

请求关闭

请求关闭车机。

在车机关闭电源时执行任务(远程任务功能)时,此属性是必需的。 车机接通电源以执行任务后,应关闭车机。任务完成后,主机会发送此消息。

当用户想要关闭车机时,此属性不适用。

这通常涉及告知车机外部的单独系统(例如电源控制器)准备关闭车机。

外部系统必须通过检查车辆是否正在使用来验证此请求是否有效。如果用户在发送 SHUTDOWN_REQUEST 后进入车辆,则系统必须忽略此请求。建议在电源控制器中存储 VehicleInUse 属性,并通过 VEHICLE_IN_USE 属性公开该属性。如果 VehicleInUse 为 true,则必须忽略关闭请求。

如果允许,外部系统会向车机发送关闭信号,这会导致 VHAL 向 Android 发送 SHUTDOWN_PREPARE 消息。然后,Android 会通过处理消息启动关闭过程。

此属性仅用于发出请求,且仅支持写入。每当设置此属性值时,系统都会发出关闭请求,无论当前属性值如何。当前属性值没有意义。

由于此属性是只写属性,因此不允许订阅,也不会生成任何属性更改事件。

要设置的值表示关机选项,必须是 {@code VehicleApPowerStateShutdownParam} 之一。例如,VehicleApPowerStateShutdownParam.SLEEP_IMMEDIATELY。如果系统不支持此类选项,则可能不会采用此关闭选项。在这种情况下,系统不会返回错误。

对于配置信息,VehiclePropConfig.configArray 必须具有组合 {@code VehicleApPowerStateConfigFlag} 中的值的位标志,以指示支持哪些关闭选项。

如果无法向其他系统发送关闭请求,则返回错误。

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:VehicleApPowerStateShutdownParam>
单位类型:无
版本:Android 14

STEERING_WHEEL_DEPTH_MOVE

方向盘深度移动。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有值。

maxInt32Value 表示方向盘正在远离驾驶员处。minInt32Value 表示方向盘向驾驶员移动。

整数越大(无论是正值还是负值),表示移动速度就越快。当方向盘达到位置限制时,该值必须重置为 0。如果 STEERING_WHEEL_DEPTH_MOVE 的值目前为 0,则表示没有任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STEERING_WHEEL_DEPTH_POS

方向盘深度位置。所有方向盘属性的唯一 ID 均从 0x0BE0 开始。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有值。maxInt32Value 表示最远离驾驶员的方向盘位置。minInt32Value 表示离驾驶员最近的方向盘位置。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于

此属性表示为相对位置的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STEERING_WHEEL_EASY_ACCESS_ENABLED

已启用方向盘轻松访问功能。如果为 true,系统会自动调整驾驶员的方向盘,以便驾驶员更轻松地上下车。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STEERING_WHEEL_HEIGHT_MOVE

方向盘高度移动。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有值。

maxInt32Value 表示方向盘正在上移。minInt32Value 表示方向盘向下移动。

较大的整数(正整数或负整数)表示移动速度较快。当方向盘达到位置限制时,该值必须重置为 0。如果 STEERING_WHEEL_HEIGHT_MOVE 的值目前为 0,则表示目前没有发生任何移动。

此属性表示为相对移动速度的指定范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STEERING_WHEEL_HEIGHT_POS

方向盘高度位置。

必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。您必须支持介于 minInt32ValuemaxInt32Value 之间的所有值。maxInt32Value 表示方向盘处于最高位置。minInt32Value 表示方向盘位于最低位置。

minInt32ValuemaxInt32Value 之间的值表示最低位置和最高位置之间的过渡状态。

此属性表示为指定的相对位置范围。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STEERING_WHEEL_LIGHTS_STATE

方向盘灯状态。表示方向盘灯的当前状态。这与 STEERING_WHEEL_LIGHTS_SWITCH 不同,后者表示控制灯的开关的位置。因此,STEERING_WHEEL_LIGHTS_STATE 可能与 STEERING_WHEEL_LIGHTS_SWITCH 的值不匹配(例如,STEERING_WHEEL_LIGHTS_SWITCH=AUTOMATICSTEERING_WHEEL_LIGHTS_STATE=ON)。

仅当 STEERING_WHEEL_LIGHTS_STATE 的值可能与 CABIN_LIGHTS_STATE 的值不同时,才应实现此属性。

对于全局区域 ID (0),必须定义 VehicleAreaConfig#supportedEnumValues,除非同时支持 VehicleLightState 的所有枚举值。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleLightState
单位类型:无
版本:Android 14

STEERING_WHEEL_LIGHTS_SWITCH

方向盘灯开关。表示控制方向盘灯的开关的位置。这与表示方向盘灯的当前状态不同。因此,STEERING_WHEEL_LIGHTS_SWITCH 可能与 STEERING_WHEEL_LIGHTS_STATE 的值不匹配。例如,STEERING_WHEEL_LIGHTS_SWITCH=AUTOMATICSTEERING_WHEEL_LIGHTS_STATE=ON

仅当 STEERING_WHEEL_LIGHTS_SWITCH 的值可能与 CABIN_LIGHTS_SWITCH 的值不同时,才应实现此属性。

对于全局区域 ID (0),除非支持 VehicleLightSwitch 的所有枚举值,否则必须定义 VehicleAreaConfig#supportedEnumValues

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleLightSwitch
单位类型:无
版本:Android 14

STEERING_WHEEL_LOCKED

方向盘已锁定。如果为 true,则方向盘的位置已锁定且不可更改。 此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 <covehiclepropertyaccess.read< code="">。/p> </covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:不适用
单元类型:不适用
版本:Android 14

STEERING_WHEEL_THEFT_LOCK_已启用

已启用方向盘防盗锁功能。如果为 true,在某些情况下,方向盘会自动锁定以防止盗窃。此属性被定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ。

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

STORAGE_ENCRYPTION_BINDING_SEED 文件

外部加密绑定种子。此值会与本地密钥存储加密密钥混合。此属性的大小为 16 个字节,并且应保留在与 IVI 分开的 ECU 上。该属性最初是由 AAOS 设置的,后者使用 CSRNG 生成该属性。然后,AAOS 会在后续启动时读取该属性。绑定种子应可靠地持久化。如果种子丢失,IVI 将恢复出厂设置。

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

SUPPORT_CUSTOMIZE_VENDOR_PERMISSION

支持为供应商属性自定义权限。

如果 VHAL 支持自定义供应商权限功能,请实现此属性。 VehiclePropConfig.configArray 用于指明为此供应商属性选择的供应商属性和权限。权限必须是 VehicleVendorPermission 中的枚举之一。 configArray 的设置如下所示,其中 configArray[n]: propId : property ID 是供应商属性,configArray[n+1] 是 VehicleVendorPermission 中的枚举,表示读取该属性值的权限。

configArray[n+2] 是 VehicleVendorPermission 中的枚举,表示写入该属性值的权限。例如:

configArray: { vendor_prop_1, PERMISSION_VENDOR_SEAT_READ, PERMISSION_VENDOR_SEAT_WRITE, vendor_prop_2, PERMISSION_VENDOR_INFO, PERMISSION_NOT_ACCESSIBLE, }

如果供应商属性不在此数组中,则具有默认供应商权限。如果供应商选择 PERMISSION_NOT_ACCESSIBLE,则 Android 将无权访问该属性。在示例中,Android 无法为 vendor_prop_2 写入值。

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

SUPPORTED_PROPERTY_IDS

已废弃)所有受支持的房源 ID 的列表。

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 14

SWITCH_USER

定义了切换前台 Android 用户的请求。

此属性主要由 Android 系统用于告知 HAL 当前的前台 Android 用户正在切换,但 HAL 也可以使用此属性请求 Android 系统切换用户。当 Android 发出请求时,它会设置 VehiclePropValue,并且 HAL 必须通过属性更改事件进行响应。当 HAL 发出请求时,它也必须通过属性更改事件来完成此操作(主要区别在于请求 ID 在前一种情况下为正数,在后一种情况下为负数)。SwitchUserMessageType 也不同。

这两种请求的格式由 SwitchUserRequest 定义,响应格式(如果需要)由 SwitchUserResponse 定义。HAL(或 Android 系统)应如何处理取决于消息类型(由 SwitchUserMessageType 参数定义),如下所定义。
  • LEGACY_ANDROID_SWITCH 当更改请求以与 HAL 集成的方式(例如通过 adb shell am switch-user)发出时,Android 系统会调用此方法来指示 Android 用户即将更改。HAL 在收到此请求后可以切换其内部用户,但无需回复 Android 系统。如果其内部用户因某种原因而无法更改,则必须等待 SWITCH_USER(type=ANDROID_POST_SWITCH) 调用恢复(例如,它可以发出 SWITCH_USER(type=VEHICLE_REQUEST) 以切换回上一个用户)。理想情况下,它绝不会失败(因为切换回去可能会让最终用户感到困惑)。
    例如,如果系统有用户 (0、10、11),并且从 0 切换到 11(其中没有任何用户具有任何特殊标志),请求将如下所示:
    • int32[0] 42 // 请求 ID
    • int32[1] 1 // SwitchUserMessageType::LEGACY_ANDROID_SWITCH
    • int32[2] 11 // 目标用户 ID
    • int32[3] 0 // 目标用户标志(无)
    • int32[4] 10 // 当前用户
    • int32[5] 0 // 当前用户标志(无)
    • int32[6] 3 // 用户数量
    • int32[7] 0 // 用户 0(Android 用户 ID 为 0)
    • int32[8] 0 // 用户 0 的标志(无)
    • int32[9] 10 // 用户 1(Android 用户 ID 为 10)
    • int32[10] 0 // 用户 1 的标志(无)
    • int32[11] 11 // 用户 2(Android 用户 ID 为 11)
    • int32[12] 0 // 用户 2 的标志(无)
  • ANDROID_SWITCH:由 Android 系统调用,表示 Android 用户即将更改,但 Android 会等待 HAL 的响应(最多一段时间),然后再继续操作。HAL 必须在收到此请求后切换其内部用户,然后使用 SWITCH_USER(type=VEHICLE_RESPONSE) 向 Android 返回响应,指明其内部用户是否已切换(通过 SwitchUserStatus 枚举)。例如,如果 Android 有用户(0、10、11),并且从 10 切换到 11(其中没有任何用户具有任何特殊标志),请求将如下所示:
    • int32[0] 42 // 请求 ID
    • int32[1] 2 // SwitchUserMessageType::ANDROID_SWITCH
    • int32[2] 11 // 目标用户 ID
    • int32[3] 0 // 目标用户标志(无)
    • int32[4] 10 // 当前用户
    • int32[5] 0 // 当前用户标志(无)
    • int32[6] 3 // 用户数量
    • int32[7] 0 // 第一位用户(用户 0)
    • int32[8] 1 // 第一位用户标志(SYSTEM)
    • int32[9] 10 // 第二位用户(用户 10)
    • int32[10] 0 // 第二位用户标志(无)
    • int32[11] 11 // 第三位用户(用户 11)
    • int32[12] 0 // 第 3 位用户标志(无)

    如果请求成功,HAL 必须使用以下内容更新该属性:

    • int32[0] 42 // 请求 ID
    • int32[1] 3 // messageType:SwitchUserMessageType::VEHICLE_RESPONSE
    • int32[2] 1 // 状态:SwitchUserStatus::SUCCESS

    如果请求失败,响应将类似如下所示:

    • int32[0] 42 // 请求 ID
    • int32[1] 3 // messageType: SwitchUserMessageType::VEHICLE_RESPONSE
    • int32[2] 2 // status: SwitchUserStatus::FAILURE string: "108-D'OH!"
    • 特定于原始设备制造商 (OEM) 的错误消息
  • VEHICLE_RESPONSE:由 HAL 调用,以指示应该继续还是中止类型为 ANDROID_SWITCH 的请求。另请参阅 ANDROID_SWITCH。
  • VEHICLE_REQUEST:由 HAL 调用,以请求切换当前前台 Android 用户。如果 Android 以某个用户的身份启动,但车辆将驾驶员识别为另一个用户,此功能非常有用。例如,用户 A 使用用户 B 的遥控钥匙解锁了汽车。INITIAL_USER_INFO 请求返回了用户 B,但随后面部识别子子系统将用户识别为 A。HAL 通过属性更改事件(传递负请求 ID)发出此请求,Android 系统响应是发出具有相同请求 ID 的 ANDROID_POST_SWITCH 调用。例如,如果当前前台 Android 用户为 10,并且 HAL 请求切换到 11,请求将如下所示:
    • int32[0] -108 // 请求 ID
    • int32[1] 4 // messageType:SwitchUserMessageType::VEHICLE_REQUEST
    • int32[2] 11 // Android 用户 ID

    如果请求成功,并且 Android 有三位用户(0、10 和 11),响应将如下所示:

    • int32[0] -108 // 请求 ID
    • int32[1] 5 // messageType:SwitchUserMessageType::ANDROID_POST_SWITCH
    • int32[2] 11 // 目标用户 ID
    • int32[3] 0 // 目标用户 ID 标志(无)
    • int32[4] 11 // 当前用户
    • int32[5] 0 // 当前用户标志(无)
    • int32[6] 3 // 用户数量
    • int32[7] 0 // 第一位用户(用户 0)
    • int32[8] 0 // 带来用户首次互动的标志(无)
    • int32[9] 10 // 第二位用户(用户 10)
    • int32[10] 4 // 第二位用户标志(无)
    • int32[11] 11 // 第三位用户(用户 11)
    • int32[12] 3 // 第三位用户标志(无)

    当前用户 ID 和目标用户 ID 相同。如果请求失败,则结果会有所不同。 例如,目标用户为 11,当前用户为 10。

  • ANDROID_POST_SWITCH 在发出切换用户的请求后由 Android 系统调用。 系统会在任何类型的切换请求(例如 >code>LEGACY_ANDROID_SWITCH、>code>ANDROID_SWITCH 或 VEHICLE_REQUEST)之后调用此属性,并且可用于确定请求是成功还是失败。
    • 成功后,当 Android 用户处于解锁状态且响应中的当前用户 ID 和目标用户 ID 的值相同时,系统会调用此监听器。这相当于在 Android 应用中接收 Intent.ACTION_USER_UNLOCKED。
    • 如果失败,系统会立即调用该方法,并且响应中的当前用户 ID 和目标用户 ID 的值会不同(因为当前用户未更改为目标用户)。
    • 如果在 HAL 响应上一个切换请求之前或在用户解锁之前发出新的切换请求,则系统不会发出 ANDROID_POST_SWITCH 请求。例如,驱动程序可能会意外切换到具有锁定凭据的错误用户,然后在输入凭据之前切换到正确的用户。

    HAL 在收到此请求后可以更新其内部状态,但无需回复 Android 系统。

    • 请求。INITIAL_USER_INFO 定义的前 N 个值(其中索引为 1 的请求专用值为 SwitchUserMessageType::ANDROID_POST_SWITCH),然后是目标用户 ID(例如,请求切换到的 Android 用户 ID)及其标志(由 UserFlags 定义)的两个值。
    • 回复:无。例如,请参阅 VEHICLE_REQUEST

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

TIRE_PRESSURE

轮胎压力。每个轮胎都由其 areaConfig.areaId 配置进行标识。相应的 minFloatValue 和 maxFloatValue 用于存储 OEM 建议的压力范围。必须定义 VehicleAreaConfig 中的 minFloatValue 和 maxFloatValue 的值。

areaConfig 数据中的 minFloatValue 表示建议的轮胎压力下限。regionConfig 数据中的 maxFloatValue 表示建议轮胎压力的上限。例如,以下 regionConfig 指示左侧前轮轮胎的建议轮胎压力为 200.0kPa 到 240.0kPa。

.areaConfigs: { VehicleAreaConfig { .areaId: VehicleAreaWheel::LEFT_FRONT, .minFloatValue: 200.0, .maxFloatValue: 240.0, } }

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:KILOPASCAL
版本:Android 13

TIRE_PRESSURE_DISPLAY_UNITS

用于显示的轮胎压力单位。表示汽车使用哪些单位向用户显示轮胎压力。例如 PSI、Bar 或千帕。VehiclePropConfig.configArray 用于指示支持的压力显示单元。压力单位在 VehicleUnit 中定义。例如,configArray[0]:KILOPASCAL configArray[1]:PSI configArray[2]:BAR

如果更新 TIRE_PRESSURE_DISPLAY_UNITS 会影响其他 *_DISPLAY_UNITS 属性的值,则它们的值也必须更新并传达给 AAOS 框架。 此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 <covehiclepropertyaccess.read< code="">。/p> </covehiclepropertyaccess.read<>

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:VehicleUnit
单位类型:不适用
版本:Android 13

TRACTION_CONTROL_ACTIVE

当牵引控制 (TC) 处于启用状态时,设为 true;当 TC 关闭时,设为 false。此属性可根据 TC 系统的实时状态而间歇性设置(脉冲)。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

TRAILER_PRESENT

返回汽车的拖车状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:TrailerState
单位类型:无
版本:Android 13

TURN_SIGNAL_STATE

车辆转向灯的状态。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:VehicleTurnSignal
单位类型:无
版本:Android 13

USER_IDENTIFICATION_ASSOCIATION

用于将当前用户与车辆专用身份识别机制(例如遥控钥匙)相关联(或查询关联)的属性。

这是可选的用户管理属性。即使不定义,OEM 仍可支持用户管理。事实上,即使不支持 INITIAL_USER_INFO 中所述的核心用户相关功能,也可以使用此属性。

如需查询关联,Android 系统会获取该属性,并传递一个 VehiclePropValue,其中包含 UserIdentificationGetRequest 定义的要查询的关联类型。HAL 必须立即返回,并返回包含 UserIdentificationResponse 的 VehiclePropValue。

请注意,用户识别发生在系统启动时。获取 VHAL 实现应仅返回已识别的关联(例如用于解锁汽车的钥匙 FOB),而不是从 get 调用开始新关联。

如需关联类型,Android 系统会设置该属性,传递一个 VehiclePropValue,其中包含要设置的关联的类型和值(如 UserIdentificationSetRequest 中所定义)。

然后,HAL 使用属性更改事件(其 VehiclePropValue 由 UserIdentificationResponse 定义),指示请求后类型的当前状态。

例如,如需查询当前用户 (10) 是否与解锁车辆的遥控钥匙和 OEM 提供的自定义机制相关联,请发出以下请求:

  • int32[0] 42 // 请求 ID
  • int32[1] 10(Android 用户 ID)
  • int32[2] 0 (Android 用户标志)
  • int32[3] 2 (查询的类型数量)
  • int32[4] 1(查询的第一个类型,UserIdentificationAssociationType::KEY_FOB)
  • int32[5] 101(查询的第二种类型,UserIdentificationAssociationType::CUSTOM_1)

如果用户与 FOB 相关联,但与自定义机制不相关联,则响应为:

  • int32[0] 42 // 请求 ID
  • int32[1] 2 (响应中的关联数量)
  • int32[2] 1 (第一个类型:UserIdentificationAssociationType::KEY_FOB)
  • int32[3] 2 (第一个值:UserIdentificationAssociationValue::ASSOCIATED_CURRENT_USER)
  • int32[4] 101(第一个类型:UserIdentificationAssociationType::CUSTOM_1)
  • int32[5] 4 (第二个值:UserIdentificationAssociationValue::NOT_ASSOCIATED_ANY_USER)

然后,为了将用户与自定义机制相关联,系统会发出 set 请求:

  • int32[0] 43 // 请求 ID
  • int32[1] 10(Android 用户 ID)
  • int32[2] 0 (Android 用户标志)
  • int32[3] 1 (要设置的关联数量)
  • int32[4] 101(第一个类型:UserIdentificationAssociationType::CUSTOM_1)

如果请求成功,则响应为:

  • int32[0] 43 // 请求 ID
  • int32[1] 1 (响应中的关联数量)
  • int32[2] 101(第一个类型:UserIdentificationAssociationType::CUSTOM_1)
  • int32[3] 1 (第一个值:UserIdentificationAssociationValue::ASSOCIATED_CURRENT_USER)

设置请求会添加关联,但不会移除现有关联。在上面的示例中,结束状态将是两个关联(FOB 和 CUSTOM_1)。如需将用户仅与 CUSTOM_1 相关联(而非 FOB),则请求应为:

  • int32[0] 43 // 请求 ID
  • int32[1] 10(Android 用户 ID)
  • int32[2] 2 (设置的类型数量)
  • int32[3] 1(第一个类型:UserIdentificationAssociationType::KEY_FOB)
  • int32[4] 2 (第一个值:UserIdentificationAssociationValue::DISASSOCIATE_CURRENT_USER)
  • int32[5] 101(第二种类型:UserIdentificationAssociationType::CUSTOM_1)
  • int32[6] 1 (第二个值:UserIdentificationAssociationValue::ASSOCIATE_CURRENT_USER)

更改模式:ON_CHANGE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

VEHICLE_CURB_WEIGHT

返回车辆的整备质量(以千克为单位)。整备重量是指具有标准设备的车辆和所有必需的操作消耗品(如机油、传动油、制动液、冷却剂、空调制冷剂以及未载客或载货时额定油箱容量的燃料)的总重量。

configArray[0] 用于指定车辆的总重量(以公斤为单位)。车辆的总重量是指制造商指定的车辆最大运营重量,包括车辆的底盘、车身、发动机、发动机油液、燃料、配件、驾驶员、乘客和货物,但不包括任何拖车的重量。

更改模式:STATIC
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:KILOGRAM
版本:Android 13

VEHICLE_IN_USE

指示车辆是否正在使用中。“正在使用”表示有人在场并打算使用车辆。这并不一定意味着有人在车上。例如,如果有人为车辆远程解锁,则系统会将车辆视为正在使用中。如果此属性受支持:

  • 每当用户启动车辆或系统检测到用户在场时,都必须将 VEHICLE_IN_USE 设置为 true。每次用户将车辆关机或系统检测到用户不存在时,VEHICLE_IN_USE 都必须设为 false。
  • 如果用户关闭车辆或系统检测到用户不在场,则必须将 VEHICLE_IN_USE 设为 false。
  • 如果用户将车辆开机或系统检测到用户存在,必须将 VEHICLE_IN_USE 设为 true。

此属性与 AP_POWER_BOOTUP_REASON 的不同之处在于,AP_POWER_BOOTUP_REASON 在系统启动期间仅设置一次。不过,此属性可能会在系统启动周期内更改多次。例如,设备目前未在使用中。系统启动以执行远程任务。VEHICLE_IN_USE 为 false。在远程任务执行期间,用户进入车辆并开启车辆。 VEHICLE_IN_USE 设置为 true。在驾驶会话结束后,用户关闭车辆,VEHICLE_IN_USE 会设为 false。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 14

VEHICLE_MAP_SERVICE

车载地图服务 (VMS) 消息。此属性使用 MIXED 数据传达 VMS 消息。 其内容的解释如下。VmsMessageIntegerValuesInde 中定义的索引用于从 int32Values 读取。bytes 是按照 VMS 协议中定义的序列化 VMS 消息,对框架而言是不可见的。IVehicle#get 必须始终返回 StatusCode::NOT_AVAILABLE

更改模式:ON_CHANGEREAD_WRITE
访问模式:READ_WRITE
枚举类型:无
单位类型:无
版本:Android 13

VEHICLE_SPEED_DISPLAY_UNITS

要显示的速度单位。表示用于向用户显示速度的单位类型。 例如,m/s、km/h 或 mph。VehiclePropConfig.configArray 表示支持的速度显示单位。压力单位在 VehicleUnit 中定义。例如:

.configArray: { VehicleUnit::METER_PER_SEC, VehicleUnit::KILOMETERS_PER_HOUR, VehicleUnit::MILES_PER_HOUR }
  • configArray[0] METER_PER_SEC
  • configArray[1] MILES_PER_HOUR
  • configArray[2] KILOMETERS_PER_HOUR

如果更新 VEHICLE_SPEED_DISPLAY_UNITS 会影响其他 *_DISPLAY_UNITS properties 的值,则必须更新这些值,并将其传达给 AAOS 框架。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

VHAL_HEARTBEAT

定义 VHAL 作为心跳信号向 Car Watchdog 发送的事件。如果 VHAL 支持此属性,则 VHAL 应每 3 秒将系统运行时间写入此属性。汽车监控计时器会订阅此属性,并检查该属性是否每三秒更新一次。当缓冲时间为 3 秒时,汽车监控计时器会在距离上次检测信号最多 6 秒时等待检测信号发出。否则,汽车监控计时器会认为 VHAL 运行状况不佳并终止它。如果 VHAL 不支持此属性,汽车监控计时器不会检查 VHAL 的运行状况。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

WATCHDOG_ALIVE

定义汽车监控计时器更新的事件,以指示其处于活动状态。Car Watchdog 会每 3 秒将此属性设置为系统运行时间(以毫秒为单位)。启动时,更新可能需要更长时间。

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

WATCHDOG_TERMINATED_PROCESS

定义由 Car Watchdog 终止的进程以及终止原因。

int32Values[0] 1  // ProcessTerminationReason showing why a process is terminated. string: "/system/bin/log" // Process execution command

更改模式:ON_CHANGE
访问模式:WRITE
枚举类型:无
单位类型:无
版本:Android 13

WHEEL_TICK

报告转盘滴答声。矢量中的第一个元素是重置计数。重置表示之前的计数无法与此计数和之后的计数进行比较。出现了某种计时中断。

接下来的四个元素代表各个轮子的刻度,顺序如下:

  1. 前左
  2. 前右
  3. 后右
  4. 后左

所有计数都是累计的。当车辆向前移动时,计数会递增;当车辆向后移动时,计数会递减。车辆启动后,滴答声应重置为 0。

  • int64Values[0] 重置计数
  • int64Values[1] 左前方有提示音
  • int64Values[2] 右前方刻度
  • int64Values[3] 后右侧刻度
  • int64Values[4] 后左旋律

configArray 用于指示每轮刻度微米数值以及支持的轮子,configArray 的设置如下:

configArray[0], bits [0:3] Supported wheels

使用枚举 Wheel。例如,如果支持所有轮子,则:

  • configArray[0] VehicleAreaWheel::LEFT_FRONT | VehicleAreaWheel::RIGHT_FRONT | VehicleAreaWheel::LEFT_REAR | VehicleAreaWheel::RIGHT_REAR
  • configArray[1] 每转左前轮的微米数
  • configArray[2] 每转右前轮的微米数
  • configArray[3] 每秒后轮刻度线对应的微米数
  • 每个左后轮刻度线 configArray[4] 微米。

如果某个轮子不受支持,其值应始终设为 0。

必须填写 VehiclePropValue.timestamp

更改模式:CONTINUOUS
访问模式:READ
枚举类型:无
单位类型:无
版本:Android 13

WINDOW_LOCK

车窗儿童锁。True 表示窗口被子锁定。此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

WINDOW_MOVE

窗口移动。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。maxInt32Value 表示窗户正在以最快的速度沿平面打开/沿平面关闭。minInt32Value 表示窗口正在以最快的速度平面关闭/平面外打开。

绝对值越大(无论是正值还是负值),表示移动速度就越快。窗口达到位置极限后,该值必须重置为 0。如果 WINDOW_MOVE 的值为 0,则表示没有任何移动。此属性采用相对移动速度的指定范围表示。

对于可能从平面打开的窗户(天窗的通风模式),此参数的工作方式如下。如果:

  • 天窗处于打开状态:
    • Max进一步打开天窗,完全打开后自动停止。
    • Min关闭天窗,在关闭天窗时自动停止。
  • 通风口处于打开状态:
    • Max关闭出风口,在出风口关闭时自动停止停止。
    • Min 进一步打开通风口,在通风口完全打开后自动停止。
  • 天窗处于关闭状态:
    • Max 打开天窗,在天窗完全打开后自动停止。
    • Min打开出风口,在出风口完全打开时自动停止。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

WINDOW_POS

窗口位置。必须定义每个 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。必须支持 minInt32ValuemaxInt32Value 之间的所有整数。minInt32Value 表示窗口是关闭的,或在平面之外完全打开的。如果窗口无法沿平面打开,则 minInt32Value 是窗口完全关闭时的位置,并且必须为 0。如果窗户可以向外打开,minInt32Value 表示窗户在向外打开的位置处于完全打开状态,并且为负值。如需了解详情,请参阅以下示例。maxInt32Value 表示车窗已完全打开。

如果值介于 minInt32ValuemaxInt32Value 之间,表示车镜处于关闭/完全打开的平面外位置和完全打开位置之间的过渡状态。此属性不在任何特定的单位中,但处于指定的相对位置范围内。例如,对于可移出平面的窗口,该属性应以如下方式发挥作用:对于可能在平面之外打开的窗口(天窗的通风模式),此参数可按如下方式使用负值:

  • Max 天窗完全打开(0 表示天窗关闭)。
  • Min 天窗通风口完全打开(0 表示天窗关闭)。
在此模式下,0 表示窗口处于关闭状态。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:无
单位类型:无
版本:Android 13

WINDSHIELD_WIPERS_PERIOD

挡风玻璃刮水器周期(毫秒)。返回雨刷一次完整循环的瞬时时间段(以毫秒为单位)。完整周期是指雨刷从静止位置移动到静止位置,然后返回到静止位置。选择间歇式雨刷器设置后,在间歇式雨刷暂停期间,此属性值必须设为 0。必须定义 VehicleAreaConfig 中的 maxInt32ValueminInt32Value。 每个区域 ID 的 maxInt32Value 都必须指定最长的雨刷器周期。每个区域 ID 的 minInt32Value 都必须设置为 0。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:无
单位类型:VehicleUnit:MILLI_SECS
版本:Android 14

WINDSHIELD_WIPERS_STATE

雨刷状态。返回雨刷的当前状态。WINDSHIELD_WIPERS_STATE 的值可能与 WINDSHIELD_WIPERS_SWITCH 的值不匹配。例如,WINDSHIELD_WIPERS_STATE: ONWINDSHIELD_WIPERS_SWITCH: WindshieldWipersSwitch#AUTO。如果实现了 WINDSHIELD_WIPERS_STATE: ONWINDSHIELD_WIPERS_PERIOD,则 WINDSHIELD_WIPERS_PERIOD 必须反映雨刷器一个完整周期的时间段。

对于每个受支持的区域 ID,除非 WindshieldWipersState 中的所有状态均受支持(包括不建议采用 OTHER 的状态),否则必须定义 VehicleAreaConfig#supportedEnumValues 数组。

更改模式:ON_CHANGE
访问模式:READ
枚举类型:WindshieldWipersState
单位类型:无
版本:Android 14

WINDSHIELD_WIPERS_SWITCH

挡风玻璃雨刷已切换。表示控制挡风玻璃雨刷的开关的位置。WINDSHIELD_WIPERS_SWITCH 的值可能与 WINDSHIELD_WIPERS_STATE 的值不匹配。例如,WINDSHIELD_WIPERS_SWITCH: AUTOWINDSHIELD_WIPERS_STATE: WindshieldWipersState#ON。对于每个受支持的区域 ID,必须定义 VehicleAreaConfig#supportedEnumValues 数组,除非同时支持 WindshieldWipersSwitch 中的所有状态(包括不推荐的 OTHER)。

此属性定义为 VehiclePropertyAccess.READ_WRITE,但 OEM 可以将其实现为仅 VehiclePropertyAccess.READ。如果此属性以 VehiclePropertyAccess.READ_WRITE 的形式实现,并且 OTHER 状态在 VehicleAreaConfig#supportedEnumValues 数组中列出,则 OTHER 不是支持写入的值。它只是支持读取的值。

更改模式:ON_CHANGE
访问模式:READ_WRITE/READ
枚举类型:WindshieldWipersSwitch
单位类型:无
版本:Android 14