每個支援的屬性都會透過 VehiclePropConfig
結構定義的屬性設定指定,並具有下列欄位。
欄位 | 說明 |
---|---|
prop |
資源 ID。這必須是「支援的系統屬性」中定義的系統屬性之一,或供應商屬性。系統會使用下列欄位的位元或運算來建構資源 ID (從右至左):
例如: |
access |
資源的存取模式。必須是 READ 、WRITE 或 READ_WRITE 之一。這個值必須與「支援的系統屬性」中定義的存取模式相同。 |
changeMode |
|
configArray |
選用的陣列,用於包含屬性專屬設定。可留空。 |
configString |
選用字串,用於包含屬性專屬設定。可留空。 |
minSampleRate 和 maxSampleRate
連續屬性支援的最小和最大取樣率。如果屬性不是連續的,則不會使用。 |
資源類型
在 VehiclePropertyType.aidl
中定義為列舉。支援的屬性類型請見下表。
物業類型 | 值 | 說明 |
---|---|---|
STRING | 0x00100000 | 字串屬性,會使用 Vehicle Property Value 中的 stringValue 欄位。 |
BOOLEAN | 0x00200000 | 布林值屬性,會使用 車輛屬性值 中 int32Values 欄位的第一個元素。0 代表 false ,None 0 代表 true 。 |
INT32 | 0x00400000 | 整數屬性,使用車輛屬性值 int32Values 欄位中的第一個元素。 |
INT32_VEC | 0x00410000 | Integer[] 屬性,會使用車輛屬性值中 int32Values 欄位的元素。 |
INT64 | 0x00500000 | Long 屬性含有車輛屬性值 int64Values 欄位中的第一個元素。 |
INT64_VEC | 0x00510000 | Long[] 屬性會使用車輛屬性值中的 int64Values 欄位元素。 |
FLOAT | 0x00600000 | 浮點屬性,會使用 車輛屬性值中 floatValues 欄位的第一個元素。 |
FLOAT_VEC 數 | 0x00610000 | Float[] 屬性,會使用 Vehicle 屬性值中的 floatValues 欄位元素。 |
BYTES | 0x00700000 | byte[] 屬性,會使用車輛屬性值中 byteValues 欄位的元素。 |
混合 | 0x00e00000 | 混合型屬性。純量或向量類型的任意組合。請務必在屬性設定中的 config 陣列中提供確切的格式。 針對供應商 MIXED 類型屬性,configArray 必須以下列結構設定格式:
舉例來說, |
區域 ID 設定
每項資源設定也可能包含區域 ID 設定清單。這個清單是全球資源的選用項目,也是區域資源 (支援多個區域的資源) 的必要項目。每個區域 ID 設定都包含以下欄位。
欄位 | 說明 |
---|---|
areaId |
這個區域的 ID。請參閱「區域 ID」。 |
minInt32Value 和maxInt32Value |
|
minInt64Value 和maxInt64Value |
|
minFloatValue 和maxFloatValue |
|
(Android 14 的新功能)supportedEnumValues |
|
區域類型
在 VehicleArea.aidl
中定義為列舉。以下列出支援的區域類型。
區域類型 | 值 | 說明 |
---|---|---|
全球 | 0x01000000 | 這個房源是全球性房源,沒有多個區域。 |
WINDOW | 0x03000000 | 以視窗為基礎的區域,使用 VehicleAreaWindow 列舉。 |
《Mirror》 | 0x04000000 | 以鏡像為基礎的區域,使用 VehicleAreaMirror 列舉。 |
喜悅 | 0x05000000 | 以座位為準的區域,使用 VehicleAreaSeat 列舉。 |
門 | 0x06000000 | 以門為依據的區域,使用 VehicleAreaDoor 列舉。 |
WHEEL | 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。Area ID (區域 ID) 是由個別列舉中的一或多個標記組成。舉例來說,使用 VehicleAreaSeat
的資源可能會使用下列區域 ID:
產品 | 說明 |
---|---|
ROW_1_LEFT | ROW_1_RIGHT |
區域 ID 適用於兩個前座。 |
ROW_2_LEFT |
僅適用於後座。 |
ROW_2_RIGHT |
僅適用於後座。 |
詳情請參閱「空調」一文。