每個受支援的屬性均由透過VehiclePropConfig
結構定義的屬性配置指定,並具有以下欄位。
場地 | 描述 |
---|---|
prop | 屬性 ID。這必須是支援的系統屬性中定義的系統屬性之一或供應商屬性。屬性 ID 使用下列欄位的位元或建構(從右到左):
例如, |
access | 屬性的存取模式。必須是READ 、 WRITE 或READ_WRITE 之一。這必須等於支援的系統屬性中定義的存取模式。 |
changeMode |
|
configArray | 包含屬性特定配置的可選數組。可以為空。 |
configString | 包含屬性特定配置的可選字串。可以為空。 |
minSampleRate 和maxSampleRate 連續屬性支援的最小和最大取樣率。如果屬性不連續則不使用。 |
物業類型
在VehiclePropertyType.aidl
中定義為枚舉。下表列出了支援的屬性類型。
財產種類 | 價值 | 描述 |
---|---|---|
細繩 | 0x00100000 | 字串屬性,使用車輛屬性值中的stringValue 欄位。 |
布林值 | 0x00200000 | 布林屬性,使用Vehicle 屬性 value中int32Values 欄位中的第一個元素。 0 表示false , None 0 表示true 。 |
INT32 | 0x00400000 | Integer 屬性,使用Vehicle 屬性 value中int32Values 欄位中的第一個元素。 |
INT32_VEC | 0x00410000 | Integer[] 屬性,使用Vehicle 屬性 value中int32Values 欄位中的元素。 |
INT64 | 0x00500000 | Long 屬性,使用Vehicle 屬性 value中int64Values 欄位中的第一個元素。 |
INT64_VEC | 0x00510000 | Long[] 屬性,使用Vehicle 屬性 value中int64Values 欄位中的元素。 |
漂浮 | 0x00600000 | Float 屬性,使用Vehicle 屬性 value中floatValues 欄位中的第一個元素。 |
FLOAT_VEC | 0x00610000 | Float[] 屬性,使用Vehicle 屬性 value中floatValues 欄位中的元素。 |
位元組數 | 0x00700000 | byte[] 屬性,使用Vehicle 屬性 value中byteValues 欄位中的元素。 |
混合 | 0x00e00000 | 混合類型屬性。標量或向量類型的任意組合。必須在屬性配置的配置數組中提供確切的格式。 對於供應商 MIXED 類型屬性,configArray 需要採用下列結構進行格式化:
例如, |
區域ID配置
每個屬性配置還可以包含區域ID配置的清單。此清單對於全域屬性是可選的,對於分區屬性(具有多個支援區域的屬性)是必需的。每個區域 ID 配置都有以下欄位。
場地 | 描述 |
---|---|
areaId | 該區域的 ID。請參閱區域 ID 。 |
minInt32Value 和maxInt32Value |
|
minInt64Value 和maxInt64Value |
|
minFloatValue 和maxFloatValue |
|
( Android 14 中的新增功能)supportedEnumValues |
|
區域類型
在VehicleArea.aidl
中定義為枚舉。下面列出了支援的區域類型。
區域類型 | 價值 | 描述 |
---|---|---|
全球的 | 0x01000000 | 此屬性是全域屬性,不具有多個區域。 |
窗戶 | 0x03000000 | 基於視窗的區域,使用VehicleAreaWindow 枚舉。 |
鏡子 | 0x04000000 | 基於鏡子的區域,使用VehicleAreaMirror 枚舉。 |
座位 | 0x05000000 | 基於座位的區域,使用VehicleAreaSeat 列舉。 |
門 | 0x06000000 | 基於門的區域,使用VehicleAreaDoor 列舉。 |
車輪 | 0x07000000 | 基於車輪的區域,使用VehicleAreaWheel 枚舉。 |
每個分區屬性必須使用預先定義的區域類型。每個區域類型都有一組在該區域類型的枚舉中定義的位元標誌。例如,SEAT 區域定義了VehicleAreaSeat
枚舉:
-
ROW_1_LEFT = 0x0001
-
ROW_1_CENTER = 0x0002
-
ROW_1_RIGHT = 0x0004
-
ROW_2_LEFT = 0x0010
-
ROW_2_CENTER = 0x0020
-
ROW_2_RIGHT = 0x0040
-
ROW_3_LEFT = 0x0100
-
...
區域 ID
分區屬性透過區域 ID 進行尋址。每個分區屬性可以支援一個或多個區域 ID。區域 ID 由其各自枚舉中的一個或多個標誌組成。例如,使用VehicleAreaSeat
的屬性可能使用下列區域 ID:
物品 | 描述 |
---|---|
ROW_1_LEFT | ROW_1_RIGHT | 區域 ID 適用於兩個前座椅。 |
ROW_2_LEFT | 僅適用於左後座椅。 | ROW_2_RIGHT | 僅適用於右後座。 |
要了解更多信息,請參閱暖通空調。