1 /* 2 * Copyright (C) 2018 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package android.car; 18 19 import android.annotation.RequiresPermission; 20 import android.car.hardware.CarPropertyValue; 21 import android.car.hardware.property.VehicleElectronicTollCollectionCardStatus; 22 import android.car.hardware.property.VehicleElectronicTollCollectionCardType; 23 24 /** 25 * Copy from android.hardware.automotive.vehicle-V2.0-java_gen_java/gen/android/hardware/automotive 26 * /vehicle/V2_0. Need to update this file when vehicle propertyId is changed in VHAL. 27 * Use it as PropertyId in getProperty() and setProperty() in 28 * {@link android.car.hardware.property.CarPropertyManager} 29 */ 30 public final class VehiclePropertyIds { 31 /** 32 * Undefined property. 33 */ 34 public static final int INVALID = 0; 35 /** 36 * VIN of vehicle 37 * Requires permission: {@link Car#PERMISSION_IDENTIFICATION}. 38 */ 39 @RequiresPermission(Car.PERMISSION_IDENTIFICATION) 40 public static final int INFO_VIN = 286261504; 41 /** 42 * Manufacturer of vehicle. 43 * 44 * <ul> 45 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 46 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 47 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 48 * <li>{@code String} property type 49 * </ul> 50 * 51 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 52 */ 53 @RequiresPermission(Car.PERMISSION_CAR_INFO) 54 public static final int INFO_MAKE = 286261505; 55 /** 56 * Model of vehicle. 57 * 58 * <ul> 59 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 60 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 61 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 62 * <li>{@code String} property type 63 * </ul> 64 * 65 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 66 */ 67 @RequiresPermission(Car.PERMISSION_CAR_INFO) 68 public static final int INFO_MODEL = 286261506; 69 /** 70 * Model year of vehicle. 71 * 72 * <ul> 73 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 74 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 75 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 76 * <li>{@code Integer} property type 77 * </ul> 78 * 79 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 80 */ 81 @RequiresPermission(Car.PERMISSION_CAR_INFO) 82 public static final int INFO_MODEL_YEAR = 289407235; 83 /** 84 * Fuel capacity of the vehicle in milliliters. 85 * 86 * <ul> 87 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 88 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 89 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 90 * <li>{@code Float} property type 91 * </ul> 92 * 93 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 94 */ 95 @RequiresPermission(Car.PERMISSION_CAR_INFO) 96 public static final int INFO_FUEL_CAPACITY = 291504388; 97 /** 98 * List the {@link FuelType}s the vehicle may use. 99 * 100 * <ul> 101 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 102 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 103 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 104 * <li>{@code Integer[]} property type 105 * </ul> 106 * 107 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 108 */ 109 @RequiresPermission(Car.PERMISSION_CAR_INFO) 110 public static final int INFO_FUEL_TYPE = 289472773; 111 /** 112 * Battery capacity of the vehicle in watt-hours (Wh), if EV or hybrid. This is the nominal 113 * battery capacity when the vehicle is new. 114 * 115 * <ul> 116 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 117 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 118 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 119 * <li>{@code Float} property type 120 * </ul> 121 * 122 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 123 */ 124 @RequiresPermission(Car.PERMISSION_CAR_INFO) 125 public static final int INFO_EV_BATTERY_CAPACITY = 291504390; 126 /** 127 * List of {@link EvConnectorType}s this vehicle may use. 128 * 129 * <ul> 130 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 131 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 132 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 133 * <li>{@code Integer[]} property type 134 * </ul> 135 * 136 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 137 */ 138 @RequiresPermission(Car.PERMISSION_CAR_INFO) 139 public static final int INFO_EV_CONNECTOR_TYPE = 289472775; 140 /** 141 * {@link PortLocationType} for the fuel door location. 142 * 143 * <ul> 144 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 145 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 146 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 147 * <li>{@code Integer} property type 148 * </ul> 149 * 150 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 151 */ 152 @RequiresPermission(Car.PERMISSION_CAR_INFO) 153 public static final int INFO_FUEL_DOOR_LOCATION = 289407240; 154 /** 155 * {@link PortLocationType} for the EV port location 156 * 157 * <ul> 158 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 159 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 160 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 161 * <li>{@code Integer} property type 162 * </ul> 163 * 164 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 165 */ 166 @RequiresPermission(Car.PERMISSION_CAR_INFO) 167 public static final int INFO_EV_PORT_LOCATION = 289407241; 168 /** 169 * List {@link PortLocationType}s for Multiple EV port locations. 170 * 171 * <ul> 172 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 173 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 174 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 175 * <li>{@code Integer[]} property type 176 * </ul> 177 * 178 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 179 */ 180 @RequiresPermission(Car.PERMISSION_CAR_INFO) 181 public static final int INFO_MULTI_EV_PORT_LOCATIONS = 289472780; 182 /** 183 * Driver's {@link VehicleAreaSeat} seat location. 184 * 185 * <ul> 186 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 187 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 188 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 189 * <li>{@code Integer} property type 190 * </ul> 191 * 192 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 193 */ 194 @RequiresPermission(Car.PERMISSION_CAR_INFO) 195 public static final int INFO_DRIVER_SEAT = 356516106; 196 /** 197 * Vehicle's exterior dimensions in millimeters. 198 * 199 * <ul> 200 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 201 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 202 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_STATIC} 203 * <li>{@code Integer[]} property type 204 * </ul> 205 * 206 * <p>Exterior dimensions defined in the {@link CarPropertyValue#getValue()} {@code Integer[]}: 207 * <ul> 208 * <li>Integer[0] = height 209 * <li>Integer[1] = length 210 * <li>Integer[2] = width 211 * <li>Integer[3] = width including mirrors 212 * <li>Integer[4] = wheel base 213 * <li>Integer[5] = track width front 214 * <li>Integer[6] = track width rear 215 * <li>Integer[7] = curb to curb turning radius 216 * </ul> 217 * 218 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 219 */ 220 @RequiresPermission(Car.PERMISSION_CAR_INFO) 221 public static final int INFO_EXTERIOR_DIMENSIONS = 289472779; 222 /** 223 * Current odometer value of the vehicle in kilometers. 224 * The property is protected by the signature permission: android.car.permission.CAR_MILEAGE. 225 */ 226 @RequiresPermission(Car.PERMISSION_MILEAGE) 227 public static final int PERF_ODOMETER = 291504644; 228 /** 229 * Speed of the vehicle in meters per second. 230 * 231 * <ul> 232 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 233 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 234 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 235 * <li>{@code Float} property type 236 * </ul> 237 * 238 * <p>When the vehicle is moving forward, PERF_VEHICLE_SPEED is positive and negative when the 239 * vehicle is moving backward. Also, this value is independent of gear value (CURRENT_GEAR or 240 * GEAR_SELECTION). For example, if GEAR_SELECTION is GEAR_NEUTRAL, PERF_VEHICLE_SPEED is 241 * positive when the vehicle is moving forward, negative when moving backward, and zero when 242 * not moving. 243 * 244 * <p>Requires permission: {@link Car#PERMISSION_SPEED}. 245 */ 246 @RequiresPermission(Car.PERMISSION_SPEED) 247 public static final int PERF_VEHICLE_SPEED = 291504647; 248 /** 249 * Speed of the vehicle in meters per second for displays. 250 * 251 * <ul> 252 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 253 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 254 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 255 * <li>{@code Float} property type 256 * </ul> 257 * 258 * <p>Some cars display a slightly slower speed than the actual speed. This is 259 * usually displayed on the speedometer. 260 * 261 * <p>Requires permission: {@link Car#PERMISSION_SPEED}. 262 */ 263 @RequiresPermission(Car.PERMISSION_SPEED) 264 public static final int PERF_VEHICLE_SPEED_DISPLAY = 291504648; 265 /** 266 * Front bicycle model steering angle for vehicle in degrees. 267 * 268 * Left is negative. 269 * Requires permission: {@link Car#PERMISSION_READ_STEERING_STATE}. 270 */ 271 @RequiresPermission(Car.PERMISSION_READ_STEERING_STATE) 272 public static final int PERF_STEERING_ANGLE = 291504649; 273 /** 274 * Rear bicycle model steering angle for vehicle in degrees. 275 * 276 * Left is negative. 277 * Requires permission: {@link Car#PERMISSION_READ_STEERING_STATE}. 278 */ 279 @RequiresPermission(Car.PERMISSION_READ_STEERING_STATE) 280 public static final int PERF_REAR_STEERING_ANGLE = 291504656; 281 /** 282 * Temperature of engine coolant in celsius. 283 * The property is protected by the signature permission: 284 * android.car.permission.CAR_ENGINE_DETAILED. 285 */ 286 @RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED) 287 public static final int ENGINE_COOLANT_TEMP = 291504897; 288 /** 289 * Engine oil level 290 * The property is protected by the signature permission: 291 * android.car.permission.CAR_ENGINE_DETAILED. 292 */ 293 @RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED) 294 public static final int ENGINE_OIL_LEVEL = 289407747; 295 /** 296 * Temperature of engine oil in celsius. 297 * The property is protected by the signature permission: 298 * android.car.permission.CAR_ENGINE_DETAILED. 299 */ 300 @RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED) 301 public static final int ENGINE_OIL_TEMP = 291504900; 302 /** 303 * Engine rpm 304 * The property is protected by the signature permission: 305 * android.car.permission.CAR_ENGINE_DETAILED. 306 */ 307 @RequiresPermission(Car.PERMISSION_CAR_ENGINE_DETAILED) 308 public static final int ENGINE_RPM = 291504901; 309 /** 310 * Reports wheel ticks. 311 * 312 * <ul> 313 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 314 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 315 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 316 * <li>{@code Long[]} property type 317 * </ul> 318 * 319 * <p>The first element in the array is a reset count. A reset indicates 320 * previous tick counts are not comparable with this and future ones. Some 321 * sort of discontinuity in tick counting has occurred. 322 * 323 * <p>The next four elements represent ticks for individual wheels in the 324 * following order: front left, front right, rear right, rear left. All 325 * tick counts are cumulative. Tick counts increment when the vehicle 326 * moves forward, and decrement when vehicles moves in reverse. The ticks 327 * should be reset to 0 when the vehicle is started by the user. 328 * 329 * <ul> 330 * <li>Long[0] = reset count 331 * <li>Long[1] = front left ticks 332 * <li>Long[2] = front right ticks 333 * <li>Long[3] = rear right ticks 334 * <li>Long[4] = rear left ticks 335 * </ul> 336 * 337 * <p>configArray is used to indicate the micrometers-per-wheel-tick value and 338 * which wheels are supported. configArray is set as follows: 339 * 340 * <ul> 341 * <li>configArray[0], bits [0:3] = supported wheels. Uses {@link VehicleAreaWheel}. 342 * <li>configArray[1] = micrometers per front left wheel tick 343 * <li>configArray[2] = micrometers per front right wheel tick 344 * <li>configArray[3] = micrometers per rear right wheel tick 345 * <li>configArray[4] = micrometers per rear left wheel tick 346 * </ul> 347 * 348 * <p>NOTE: If a wheel is not supported, its value is always 0. 349 * 350 * <p>Requires permission: {@link Car#PERMISSION_SPEED}. 351 */ 352 @RequiresPermission(Car.PERMISSION_SPEED) 353 public static final int WHEEL_TICK = 290521862; 354 /** 355 * Fuel remaining in the vehicle in milliliters. 356 * 357 * <p>Property Config: 358 * <ul> 359 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 360 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 361 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 362 * <li>{@code Float} property type 363 * </ul> 364 * 365 * <p>Required Permissions: 366 * <ul> 367 * <li>{@link Car#PERMISSION_ENERGY} to read property. 368 * <li>Property is not writable. 369 * </ul> 370 */ 371 @RequiresPermission(Car.PERMISSION_ENERGY) 372 public static final int FUEL_LEVEL = 291504903; 373 /** 374 * Fuel door open. 375 * 376 * <p>Property Config: 377 * <ul> 378 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 379 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 380 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 381 * <li>{@code Boolean} property type 382 * </ul> 383 * 384 * <p>Required Permissions: 385 * <ul> 386 * <li>{@link Car#PERMISSION_ENERGY_PORTS} to read property. 387 * <li>Signature permission, android.car.permission.CONTROL_CAR_ENERGY_PORTS, to write 388 * property. 389 * </ul> 390 */ 391 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY_PORTS)) 392 @RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_CONTROL_ENERGY_PORTS)) 393 public static final int FUEL_DOOR_OPEN = 287310600; 394 /** 395 * EV battery level in watt-hours (Wh), if EV or hybrid. 396 * 397 * <p>Property Config: 398 * <ul> 399 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 400 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 401 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 402 * <li>{@code Float} property type 403 * </ul> 404 * 405 * <p>Required Permissions: 406 * <ul> 407 * <li>{@link Car#PERMISSION_ENERGY} to read property. 408 * <li>Property is not writable. 409 * </ul> 410 */ 411 @RequiresPermission(Car.PERMISSION_ENERGY) 412 public static final int EV_BATTERY_LEVEL = 291504905; 413 /** 414 * EV charge port open. 415 * 416 * <p>Property Config: 417 * <ul> 418 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 419 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 420 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 421 * <li>{@code Boolean} property type 422 * </ul> 423 * 424 * <p>Required Permissions: 425 * <ul> 426 * <li>{@link Car#PERMISSION_ENERGY_PORTS} to read property. 427 * <li>Signature permission, android.car.permission.CONTROL_CAR_ENERGY_PORTS, to write 428 * property. 429 * </ul> 430 */ 431 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY_PORTS)) 432 @RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_CONTROL_ENERGY_PORTS)) 433 public static final int EV_CHARGE_PORT_OPEN = 287310602; 434 /** 435 * EV charge port connected. 436 * 437 * <p>Property Config: 438 * <ul> 439 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 440 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 441 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 442 * <li>{@code Boolean} property type 443 * </ul> 444 * 445 * <p>Required Permissions: 446 * <ul> 447 * <li>{@link Car#PERMISSION_ENERGY_PORTS} to read property. 448 * <li>Property is not writable. 449 * </ul> 450 */ 451 @RequiresPermission(Car.PERMISSION_ENERGY_PORTS) 452 public static final int EV_CHARGE_PORT_CONNECTED = 287310603; 453 /** 454 * EV instantaneous charge rate in milliwatts. 455 * 456 * <p>Positive rate indicates battery is being charged, and Negative rate indicates battery 457 * being discharged. 458 * 459 * <p>Property Config: 460 * <ul> 461 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 462 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 463 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 464 * <li>{@code Float} property type 465 * </ul> 466 * 467 * <p>Required Permissions: 468 * <ul> 469 * <li>{@link Car#PERMISSION_ENERGY} to read property. 470 * <li>Property is not writable. 471 * </ul> 472 */ 473 @RequiresPermission(Car.PERMISSION_ENERGY) 474 public static final int EV_BATTERY_INSTANTANEOUS_CHARGE_RATE = 291504908; 475 /** 476 * Range remaining in meters. 477 * 478 * <p>Range remaining accounts for all energy sources in a vehicle. For example, a hybrid car's 479 * range will be the sum of the ranges based on fuel and battery. 480 * 481 * <p>Property Config: 482 * <ul> 483 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 484 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 485 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 486 * <li>{@code Float} property type 487 * </ul> 488 * 489 * <p>Required Permissions: 490 * <ul> 491 * <li>{@link Car#PERMISSION_ENERGY} to read property. 492 * <li>Signature permission, android.car.permission.ADJUST_RANGE_REMAINING, to write property. 493 * </ul> 494 */ 495 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_ENERGY)) 496 @RequiresPermission.Write(@RequiresPermission(Car.PERMISSION_ADJUST_RANGE_REMAINING)) 497 public static final int RANGE_REMAINING = 291504904; 498 /** 499 * Tire pressure in kilopascals. 500 * 501 * min/max value indicates tire pressure sensor range. Each tire will have a separate min/max 502 * value denoted by its areaConfig.areaId. 503 * The property is protected by the signature permission: android.car.permission.CAR_TIRES. 504 */ 505 @RequiresPermission(Car.PERMISSION_TIRES) 506 public static final int TIRE_PRESSURE = 392168201; 507 /** 508 * Critically low tire pressure 509 * 510 * <p>This property indicates the critically low pressure threshold for each tire. It 511 * indicates when it is time for tires to be replaced or fixed. The value 512 * must be less than or equal to minFloatValue in {@link VehiclePropertyIds#TIRE_PRESSURE}. 513 * <p>Minimum and maximum property values 514 * (that is, {@code minFloatValue}, {@code maxFloatValue}) are not applicable to this property. 515 */ 516 @RequiresPermission(Car.PERMISSION_TIRES) 517 public static final int CRITICALLY_LOW_TIRE_PRESSURE = 392168202; 518 /** 519 * Currently selected gear by user. 520 * 521 * <ul> 522 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 523 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 524 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 525 * <li>{@code Integer} property type 526 * </ul> 527 * 528 * <p> See {@link VehicleGear} for gear value enum. 529 * 530 * <p>configArray represents the list of supported gears for the vehicle. For example, 531 * configArray for an EV vehicle is set as follows: 532 * 533 * <ul> 534 * <li>configArray[0] = {@link VehicleGear#GEAR_REVERSE} 535 * <li>configArray[1] = {@link VehicleGear#GEAR_PARK} 536 * <li>configArray[2] = {@link VehicleGear#GEAR_DRIVE} 537 * </ul> 538 * 539 * <p>Example automatic transmission configArray: 540 * 541 * <ul> 542 * <li>configArray[0] = {@link VehicleGear#GEAR_NEUTRAL} 543 * <li>configArray[1] = {@link VehicleGear#GEAR_REVERSE} 544 * <li>configArray[2] = {@link VehicleGear#GEAR_PARK} 545 * <li>configArray[3] = {@link VehicleGear#GEAR_DRIVE} 546 * <li>configArray[4] = {@link VehicleGear#GEAR_FIRST} 547 * <li>configArray[5] = {@link VehicleGear#GEAR_SECOND} 548 * <li>... 549 * </ul> 550 * 551 * <p>Example manual transmission configArray: 552 * 553 * <ul> 554 * <li>configArray[0] = {@link VehicleGear#GEAR_NEUTRAL} 555 * <li>configArray[1] = {@link VehicleGear#GEAR_REVERSE} 556 * <li>configArray[4] = {@link VehicleGear#GEAR_FIRST} 557 * <li>configArray[5] = {@link VehicleGear#GEAR_SECOND} 558 * <li>... 559 * </ul> 560 * 561 * <p>Requires permission: {@link Car#PERMISSION_POWERTRAIN}. 562 */ 563 @RequiresPermission(Car.PERMISSION_POWERTRAIN) 564 public static final int GEAR_SELECTION = 289408000; 565 /** 566 * Vehicle transmission's current {@link VehicleGear}. 567 * 568 * <ul> 569 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 570 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 571 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 572 * <li>{@code Integer} property type 573 * </ul> 574 * 575 * <p>{@code CURRENT_GEAR}'s value may not match that of {@link 576 * VehiclePropertyIds#GEAR_SELECTION}. For example, if the {@link 577 * VehiclePropertyIds#GEAR_SELECTION} is {@link VehicleGear#GEAR_DRIVE} in a vehicle with an 578 * automatic transmission, the {@code CURRENT_GEAR} will be one of {@link 579 * VehicleGear#GEAR_FIRST}, {@link VehicleGear#GEAR_SECOND}, etc, which reflects the actual gear 580 * the transmission is currently running in. 581 * 582 * <p>configArray represents the list of supported {@link VehicleGear}s for {@code 583 * CURRENT_GEAR}. For example, the configArray for an EV vehicle is set as follows: 584 * 585 * <ul> 586 * <li>configArray[0] = {@link VehicleGear#GEAR_REVERSE} 587 * <li>configArray[1] = {@link VehicleGear#GEAR_PARK} 588 * <li>configArray[2] = {@link VehicleGear#GEAR_DRIVE} 589 * </ul> 590 * 591 * <p>Example automatic transmission configArray: 592 * 593 * <ul> 594 * <li>configArray[0] = {@link VehicleGear#GEAR_NEUTRAL} 595 * <li>configArray[1] = {@link VehicleGear#GEAR_REVERSE} 596 * <li>configArray[2] = {@link VehicleGear#GEAR_PARK} 597 * <li>configArray[4] = {@link VehicleGear#GEAR_FIRST} 598 * <li>configArray[5] = {@link VehicleGear#GEAR_SECOND} 599 * <li>... 600 * </ul> 601 * 602 * <p>Example manual transmission configArray: 603 * 604 * <ul> 605 * <li>configArray[0] = {@link VehicleGear#GEAR_NEUTRAL} 606 * <li>configArray[1] = {@link VehicleGear#GEAR_REVERSE} 607 * <li>configArray[4] = {@link VehicleGear#GEAR_FIRST} 608 * <li>configArray[5] = {@link VehicleGear#GEAR_SECOND} 609 * <li>... 610 * </ul> 611 * 612 * <p>Requires permission: {@link Car#PERMISSION_POWERTRAIN}. 613 */ 614 @RequiresPermission(Car.PERMISSION_POWERTRAIN) 615 public static final int CURRENT_GEAR = 289408001; 616 /** 617 * Parking brake state. 618 * 619 * <ul> 620 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 621 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 622 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 623 * <li>{@code Boolean} property type 624 * </ul> 625 * 626 * <p>Requires permission: {@link Car#PERMISSION_POWERTRAIN}. 627 */ 628 @RequiresPermission(Car.PERMISSION_POWERTRAIN) 629 public static final int PARKING_BRAKE_ON = 287310850; 630 /** 631 * Auto-apply parking brake. 632 * 633 * <ul> 634 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 635 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 636 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 637 * <li>{@code Boolean} property type 638 * </ul> 639 * 640 * <p>Requires permission: {@link Car#PERMISSION_POWERTRAIN}. 641 */ 642 @RequiresPermission(Car.PERMISSION_POWERTRAIN) 643 public static final int PARKING_BRAKE_AUTO_APPLY = 287310851; 644 /** 645 * Warning for fuel low level. 646 * 647 * <p>{@code FUEL_LEVEL_LOW} corresponds to the low fuel warning on the dashboard. Once {@code 648 * FUEL_LEVEL_LOW} is set, it should not be cleared until more fuel is added to the vehicle. 649 * This property may take into account all fuel sources for a vehicle - for example: 650 * <ul> 651 * <li>For a gas powered vehicle, this property is based solely on gas level. 652 * <li>For a battery powered vehicle, this property is based solely on battery level. 653 * <li>For a hybrid vehicle, this property may be based on the combination of gas and 654 * battery levels, at the OEM's discretion. 655 * </ul> 656 * 657 * <p>Property Config: 658 * <ul> 659 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 660 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 661 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 662 * <li>{@code Boolean} property type 663 * </ul> 664 * 665 * <p>Required Permissions: 666 * <ul> 667 * <li>{@link Car#PERMISSION_ENERGY} to read property. 668 * <li>Property is not writable. 669 * </ul> 670 */ 671 @RequiresPermission(Car.PERMISSION_ENERGY) 672 public static final int FUEL_LEVEL_LOW = 287310853; 673 /** 674 * Night mode. 675 * 676 * <ul> 677 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 678 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 679 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 680 * <li>{@code Boolean} property type 681 * </ul> 682 * 683 * <p>True indicates that the night mode sensor has detected that the car cabin environment has 684 * low light. 685 * 686 * <p>Requires permission: {@link Car#PERMISSION_EXTERIOR_ENVIRONMENT}. 687 */ 688 @RequiresPermission(Car.PERMISSION_EXTERIOR_ENVIRONMENT) 689 public static final int NIGHT_MODE = 287310855; 690 /** 691 * State of the vehicles turn signals 692 * The property is protected by the signature permission: 693 * android.car.permission.CAR_EXTERIOR_LIGHTS . 694 */ 695 @RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS) 696 public static final int TURN_SIGNAL_STATE = 289408008; 697 /** 698 * Vehicle's ignition state. 699 * 700 * <p>See {@link android.hardware.automotive.vehicle.V2_0.VehicleIgnitionState} for possible 701 * values. 702 * 703 * <p>Property Config: 704 * <ul> 705 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 706 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 707 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 708 * <li>{@code Integer} property type 709 * </ul> 710 * 711 * <p>Required Permissions: 712 * <ul> 713 * <li>{@link Car#PERMISSION_POWERTRAIN} to read property. 714 * <li>Property is not writable. 715 * </ul> 716 */ 717 @RequiresPermission(Car.PERMISSION_POWERTRAIN) 718 public static final int IGNITION_STATE = 289408009; 719 /** 720 * ABS is active 721 * The property is protected by the signature permission: 722 * android.car.permission.CAR_DYNAMICS_STATE. 723 */ 724 @RequiresPermission(Car.PERMISSION_CAR_DYNAMICS_STATE) 725 public static final int ABS_ACTIVE = 287310858; 726 /** 727 * Traction Control is active 728 * The property is protected by the signature permission: 729 * android.car.permission.CAR_DYNAMICS_STATE. 730 */ 731 @RequiresPermission(Car.PERMISSION_CAR_DYNAMICS_STATE) 732 public static final int TRACTION_CONTROL_ACTIVE = 287310859; 733 /** 734 * Fan speed setting 735 * The property is protected by the signature permission: 736 * android.car.permission.CONTROL_CAR_CLIMATE. 737 */ 738 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 739 public static final int HVAC_FAN_SPEED = 356517120; 740 /** 741 * Fan direction setting 742 * The property is protected by the signature permission: 743 * android.car.permission.CONTROL_CAR_CLIMATE. 744 */ 745 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 746 public static final int HVAC_FAN_DIRECTION = 356517121; 747 /** 748 * HVAC current temperature in celsius. 749 * The property is protected by the signature permission: 750 * android.car.permission.CONTROL_CAR_CLIMATE. 751 */ 752 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 753 public static final int HVAC_TEMPERATURE_CURRENT = 358614274; 754 /** 755 * HVAC, target temperature set. 756 * 757 * <p>The {@code configArray} is used to indicate the valid values for HVAC in Fahrenheit and 758 * Celsius. Android might use it in the HVAC app UI. 759 * <p>The {@code configArray} is set as follows: 760 * <ul> 761 * <li>{@code configArray[0]} is [the lower bound of the supported temperature in Celsius] 762 * * 10. 763 * <li>{@code configArray[1]} is [the upper bound of the supported temperature in Celsius] 764 * * 10. 765 * <li>{@code configArray[2]} is [the increment in Celsius] * 10. 766 * <li>{@code configArray[3]} is 767 * [the lower bound of the supported temperature in Fahrenheit] * 10. 768 * <li>{@code configArray[4]} is 769 * [the upper bound of the supported temperature in Fahrenheit] * 10. 770 * <li>{@code configArray[5]} is [the increment in Fahrenheit] * 10. 771 * </ul> 772 * <p>For example, if the vehicle supports temperature values as: 773 * <pre> 774 * [16.0, 16.5, 17.0 ,..., 28.0] in Celsius 775 * [60.5, 61.5, 62.5 ,..., 85.5] in Fahrenheit 776 * </pre> 777 * <p>The {@code configArray} should be: 778 * <pre> 779 * configArray = {160, 280, 5, 605, 855, 10}. 780 * </pre> 781 * <p>If the vehicle supports {@link VehiclePropertyIds#HVAC_TEMPERATURE_VALUE_SUGGESTION}, 782 * the application can use that property to get the suggested value before setting 783 * {@code HVAC_TEMPERATURE_SET}. Otherwise, the application may choose the 784 * value in {@code configArray} of {@code HVAC_TEMPERATURE_SET} by itself. 785 */ 786 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 787 public static final int HVAC_TEMPERATURE_SET = 358614275; 788 /** 789 * Suggested values for setting HVAC temperature. 790 * 791 * <p>Implement the property to help applications understand the closest supported temperature 792 * value in Celsius or Fahrenheit. 793 * <ul> 794 * <li>{@code floatValues[0]} is the requested value that an application wants to set a 795 * temperature to. 796 * <li>{@code floatValues[1]} is the unit for {@code floatValues[0]}. It should be one of 797 * ({@code VehicleUnit:CELSIUS}, {@code VehicleUnit:FAHRENHEIT}). 798 * <li>{@code floatValues[2]} is the value OEMs suggested in CELSIUS. This value is not 799 * included in the request. 800 * <li>{@code floatValues[3]} is the value OEMs suggested in FAHRENHEIT. This value is not 801 * included in the request. 802 * </ul> 803 * <p>An application calls 804 * {@link android.car.hardware.property.CarPropertyManager#setProperty(Class, int, int, Object)} 805 * with the requested value and unit for the value. OEMs need to return the suggested values 806 * in {@code floatValues[2]} and {@code floatValues[3]} by 807 * {@link android.car.hardware.property.CarPropertyManager.CarPropertyEventCallback}. 808 * 809 * <p>For example, when a user uses the voice assistant to set HVAC temperature to 66.2 in 810 * Fahrenheit. 811 * <p>First, an application will set this property with the value 812 * [66.2, {@code (float)VehicleUnit:FAHRENHEIT}, 0, 0]. If OEMs suggest to set 19.0 in Celsius 813 * or 66.5 in Fahrenheit for user's request, then car must generate a callback with property 814 * value [66.2, {@code (float)VehicleUnit:FAHRENHEIT}, 19.0, 66.5]. After the voice assistant 815 * gets the callback, it will inform the user and set HVAC temperature to the suggested value. 816 * 817 * <p>Another example, an application receives 21 Celsius as the current temperature value by 818 * querying {@link VehiclePropertyIds#HVAC_TEMPERATURE_SET}. But the application wants to know 819 * what value is displayed on the car's UI in Fahrenheit. 820 * <p>For this, the application sets the property to 821 * [21, {@code (float)VehicleUnit:CELSIUS}, 0, 0]. If the suggested value by the OEM for 21 822 * Celsius is 70 Fahrenheit, then car must generate a callback with property value 823 * [21, {@code (float)VehicleUnit:CELSIUS}, 21.0, 70.0]. In this case, the application can know 824 * that the value is 70.0 Fahrenheit in the car’s UI. 825 */ 826 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 827 public static final int HVAC_TEMPERATURE_VALUE_SUGGESTION = 291570965; 828 /** 829 * On/off defrost for designated window 830 * The property is protected by the signature permission: 831 * android.car.permission.CONTROL_CAR_CLIMATE. 832 */ 833 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 834 public static final int HVAC_DEFROSTER = 320865540; 835 /** 836 * On/off AC for designated areaId 837 * The property is protected by the signature permission: 838 * android.car.permission.CONTROL_CAR_CLIMATE. 839 */ 840 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 841 public static final int HVAC_AC_ON = 354419973; 842 /** 843 * On/off max AC 844 * The property is protected by the signature permission: 845 * android.car.permission.CONTROL_CAR_CLIMATE. 846 */ 847 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 848 public static final int HVAC_MAX_AC_ON = 354419974; 849 /** 850 * On/off max defrost 851 * The property is protected by the signature permission: 852 * android.car.permission.CONTROL_CAR_CLIMATE. 853 */ 854 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 855 public static final int HVAC_MAX_DEFROST_ON = 354419975; 856 /** 857 * Recirculation on/off 858 * The property is protected by the signature permission: 859 * android.car.permission.CONTROL_CAR_CLIMATE. 860 */ 861 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 862 public static final int HVAC_RECIRC_ON = 354419976; 863 /** 864 * Enable temperature coupling between areas. 865 * The property is protected by the signature permission: 866 * android.car.permission.CONTROL_CAR_CLIMATE. 867 */ 868 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 869 public static final int HVAC_DUAL_ON = 354419977; 870 /** 871 * On/off automatic mode 872 * The property is protected by the signature permission: 873 * android.car.permission.CONTROL_CAR_CLIMATE. 874 */ 875 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 876 public static final int HVAC_AUTO_ON = 354419978; 877 /** 878 * Seat heating/cooling 879 * The property is protected by the signature permission: 880 * android.car.permission.CONTROL_CAR_CLIMATE. 881 */ 882 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 883 public static final int HVAC_SEAT_TEMPERATURE = 356517131; 884 /** 885 * Side Mirror Heat 886 * The property is protected by the signature permission: 887 * android.car.permission.CONTROL_CAR_CLIMATE. 888 */ 889 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 890 public static final int HVAC_SIDE_MIRROR_HEAT = 339739916; 891 /** 892 * Steering Wheel Heating/Cooling 893 * The property is protected by the signature permission: 894 * android.car.permission.CONTROL_CAR_CLIMATE. 895 */ 896 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 897 public static final int HVAC_STEERING_WHEEL_HEAT = 289408269; 898 /** 899 * Temperature units for display 900 * The property is protected by the signature permission: 901 * android.car.permission.CONTROL_CAR_CLIMATE. 902 */ 903 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 904 public static final int HVAC_TEMPERATURE_DISPLAY_UNITS = 289408270; 905 /** 906 * Actual fan speed 907 * The property is protected by the signature permission: 908 * android.car.permission.CONTROL_CAR_CLIMATE. 909 */ 910 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 911 public static final int HVAC_ACTUAL_FAN_SPEED_RPM = 356517135; 912 /** 913 * Represents global power state for HVAC. Setting this property to false 914 * MAY mark some properties that control individual HVAC features/subsystems 915 * to UNAVAILABLE state. Setting this property to true MAY mark some 916 * properties that control individual HVAC features/subsystems to AVAILABLE 917 * state (unless any/all of them are UNAVAILABLE on their own individual 918 * merits). 919 * The property is protected by the signature permission: 920 * android.car.permission.CONTROL_CAR_CLIMATE. 921 */ 922 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 923 public static final int HVAC_POWER_ON = 354419984; 924 /** 925 * Fan Positions Available 926 * The property is protected by the signature permission: 927 * android.car.permission.CONTROL_CAR_CLIMATE. 928 */ 929 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 930 public static final int HVAC_FAN_DIRECTION_AVAILABLE = 356582673; 931 /** 932 * Automatic recirculation on/off 933 * The property is protected by the signature permission: 934 * android.car.permission.CONTROL_CAR_CLIMATE. 935 */ 936 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 937 public static final int HVAC_AUTO_RECIRC_ON = 354419986; 938 /** 939 * Seat ventilation 940 * The property is protected by the signature permission: 941 * android.car.permission.CONTROL_CAR_CLIMATE. 942 */ 943 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 944 public static final int HVAC_SEAT_VENTILATION = 356517139; 945 /** 946 * ELECTRIC DEFROSTER 947 * The property is protected by the signature permission: 948 * android.car.permission.CONTROL_CAR_CLIMATE. 949 * 950 * @hide 951 */ 952 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_CLIMATE) 953 public static final int HVAC_ELECTRIC_DEFROSTER_ON = 320865556; 954 /** 955 * Distance units for display. 956 * 957 * <p>Indicates which units the car is using to display distances to the user. 958 * 959 * <p>configArray represents the list of supported {@link VehicleUnit}s for {@code 960 * DISTANCE_DISPLAY_UNITS}. Here is an example configArray: 961 * <ul> 962 * <li>configArray[0] = {@link VehicleUnit#METER} 963 * <li>configArray[1] = {@link VehicleUnit#KILOMETER} 964 * <li>configArray[1] = {@link VehicleUnit#MILE} 965 * </ul> 966 * 967 * <p>Property Config: 968 * <ul> 969 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 970 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 971 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 972 * <li>{@code Integer} property type 973 * </ul> 974 * 975 * <p>Required Permissions: 976 * <ul> 977 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 978 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 979 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 980 * </ul> 981 */ 982 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 983 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 984 Car.PERMISSION_VENDOR_EXTENSION})) 985 public static final int DISTANCE_DISPLAY_UNITS = 289408512; 986 /** 987 * Fuel volume units for display. 988 * 989 * <p>Indicates which units the car is using to display fuel volume to the user. 990 * 991 * <p>configArray represents the list of supported {@link VehicleUnit}s for {@code 992 * FUEL_VOLUME_DISPLAY_UNITS}. Here is an example configArray: 993 * <ul> 994 * <li>configArray[0] = {@link VehicleUnit#LITER} 995 * <li>configArray[1] = {@link VehicleUnit#US_GALLON} 996 * </ul> 997 * 998 * <p>Property Config: 999 * <ul> 1000 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 1001 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1002 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1003 * <li>{@code Integer} property type 1004 * </ul> 1005 * 1006 * <p>Required Permissions: 1007 * <ul> 1008 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 1009 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 1010 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 1011 * </ul> 1012 */ 1013 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 1014 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 1015 Car.PERMISSION_VENDOR_EXTENSION})) 1016 public static final int FUEL_VOLUME_DISPLAY_UNITS = 289408513; 1017 /** 1018 * Tire pressure units for display. 1019 * 1020 * <p>Indicates which units the car is using to display tire pressure to the user. 1021 * 1022 * <p>configArray represents the list of supported {@link VehicleUnit}s for {@code 1023 * TIRE_PRESSURE_DISPLAY_UNITS}. Here is an example configArray: 1024 * <ul> 1025 * <li>configArray[0] = {@link VehicleUnit#KILOPASCAL} 1026 * <li>configArray[1] = {@link VehicleUnit#PSI} 1027 * <li>configArray[2] = {@link VehicleUnit#BAR} 1028 * </ul> 1029 * 1030 * <p>Property Config: 1031 * <ul> 1032 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 1033 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1034 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1035 * <li>{@code Integer} property type 1036 * </ul> 1037 * 1038 * <p>Required Permissions: 1039 * <ul> 1040 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 1041 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 1042 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 1043 * </ul> 1044 */ 1045 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 1046 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 1047 Car.PERMISSION_VENDOR_EXTENSION})) 1048 public static final int TIRE_PRESSURE_DISPLAY_UNITS = 289408514; 1049 /** 1050 * EV battery units for display. 1051 * 1052 * <p>Indicates which units the vehicle is using to display EV battery information to the user. 1053 * 1054 * <p>configArray represents the list of supported {@link VehicleUnit}s for {@code 1055 * EV_BATTERY_DISPLAY_UNITS}. Here is an example configArray: 1056 * <ul> 1057 * <li>configArray[0] = {@link VehicleUnit#WATT_HOUR} 1058 * <li>configArray[1] = {@link VehicleUnit#AMPERE_HOURS} 1059 * <li>configArray[2] = {@link VehicleUnit#KILOWATT_HOUR} 1060 * </ul> 1061 * 1062 * <p>Property Config: 1063 * <ul> 1064 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 1065 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1066 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1067 * <li>{@code Integer} property type 1068 * </ul> 1069 * 1070 * <p>Required Permissions: 1071 * <ul> 1072 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 1073 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 1074 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 1075 * </ul> 1076 */ 1077 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 1078 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 1079 Car.PERMISSION_VENDOR_EXTENSION})) 1080 public static final int EV_BATTERY_DISPLAY_UNITS = 289408515; 1081 /** 1082 * Speed units for display. 1083 * 1084 * <p>Indicates type of units the vehicle is using to display speed to user. 1085 * 1086 * <p>configArray represents the list of supported {@link VehicleUnit}s for {@code 1087 * VEHICLE_SPEED_DISPLAY_UNITS}. Here is an example configArray: 1088 * <ul> 1089 * <li>configArray[0] = {@link VehicleUnit#METER_PER_SEC} 1090 * <li>configArray[1] = {@link VehicleUnit#MILES_PER_HOUR} 1091 * <li>configArray[2] = {@link VehicleUnit#KILOMETERS_PER_HOUR} 1092 * </ul> 1093 * 1094 * <p>Property Config: 1095 * <ul> 1096 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 1097 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1098 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1099 * <li>{@code Integer} property type 1100 * </ul> 1101 * 1102 * <p>Required Permissions: 1103 * <ul> 1104 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 1105 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 1106 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 1107 * </ul> 1108 * 1109 * @hide 1110 */ 1111 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 1112 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 1113 Car.PERMISSION_VENDOR_EXTENSION})) 1114 public static final int VEHICLE_SPEED_DISPLAY_UNITS = 289408516; 1115 /** 1116 * Fuel consumption units for display. 1117 * 1118 * <p>Indicates type of units the car is using to display fuel consumption information to user. 1119 * 1120 * <p>{@code true} indicates units are distance over volume such as MPG. 1121 * 1122 * <p>{@code false} indicates units are volume over distance such as L/100KM. 1123 * 1124 * <p>Property Config: 1125 * <ul> 1126 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ_WRITE} 1127 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1128 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1129 * <li>{@code Boolean} property type 1130 * </ul> 1131 * 1132 * <p>Required Permissions: 1133 * <ul> 1134 * <li>{@link Car#PERMISSION_READ_DISPLAY_UNITS} to read property. 1135 * <li>Signature permissions, android.car.permission.CONTROL_CAR_DISPLAY_UNITS and 1136 * android.car.permission.CAR_VENDOR_EXTENSION, to write property. 1137 * </ul> 1138 */ 1139 @RequiresPermission.Read(@RequiresPermission(Car.PERMISSION_READ_DISPLAY_UNITS)) 1140 @RequiresPermission.Write(@RequiresPermission(allOf = {Car.PERMISSION_CONTROL_DISPLAY_UNITS, 1141 Car.PERMISSION_VENDOR_EXTENSION})) 1142 public static final int FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME = 287311364; 1143 /** 1144 * Outside temperature in celsius. 1145 * 1146 * <ul> 1147 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 1148 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1149 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_CONTINUOUS} 1150 * <li>{@code Float} property type 1151 * </ul> 1152 * 1153 * <p>Requires permission: {@link Car#PERMISSION_EXTERIOR_ENVIRONMENT}. 1154 */ 1155 @RequiresPermission(Car.PERMISSION_EXTERIOR_ENVIRONMENT) 1156 public static final int ENV_OUTSIDE_TEMPERATURE = 291505923; 1157 /** 1158 * Property to control power state of application processor 1159 * 1160 * It is assumed that AP's power state is controller by separate power 1161 * controller. 1162 * The property is protected by the signature permission: android.car.permission.CAR_POWER. 1163 */ 1164 @RequiresPermission(Car.PERMISSION_CAR_POWER) 1165 public static final int AP_POWER_STATE_REQ = 289475072; 1166 /** 1167 * Property to report power state of application processor 1168 * 1169 * It is assumed that AP's power state is controller by separate power 1170 * controller. 1171 * The property is protected by the signature permission: android.car.permission.CAR_POWER. 1172 */ 1173 @RequiresPermission(Car.PERMISSION_CAR_POWER) 1174 public static final int AP_POWER_STATE_REPORT = 289475073; 1175 /** 1176 * Property to report bootup reason for the current power on. This is a 1177 * static property that will not change for the whole duration until power 1178 * off. For example, even if user presses power on button after automatic 1179 * power on with door unlock, bootup reason must stay with 1180 * VehicleApPowerBootupReason#USER_UNLOCK. 1181 * The property is protected by the signature permission: android.car.permission.CAR_POWER. 1182 */ 1183 @RequiresPermission(Car.PERMISSION_CAR_POWER) 1184 public static final int AP_POWER_BOOTUP_REASON = 289409538; 1185 /** 1186 * Property to represent brightness of the display. Some cars have single 1187 * control for the brightness of all displays and this property is to share 1188 * change in that control. 1189 * The property is protected by the signature permission: android.car.permission.CAR_POWER. 1190 */ 1191 @RequiresPermission(Car.PERMISSION_CAR_POWER) 1192 public static final int DISPLAY_BRIGHTNESS = 289409539; 1193 /** 1194 * Property to feed H/W input events to android 1195 */ 1196 public static final int HW_KEY_INPUT = 289475088; 1197 /** 1198 * Door position 1199 * 1200 * This is an integer in case a door may be set to a particular position. 1201 * Max value indicates fully open, min value (0) indicates fully closed. 1202 * The property is protected by the signature permission: 1203 * android.car.permission.CONTROL_CAR_DOORS. 1204 */ 1205 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS) 1206 public static final int DOOR_POS = 373295872; 1207 /** 1208 * Door move 1209 * The property is protected by the signature permission: 1210 * android.car.permission.CONTROL_CAR_DOORS. 1211 */ 1212 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS) 1213 public static final int DOOR_MOVE = 373295873; 1214 /** 1215 * Door lock 1216 * The property is protected by the signature permission: 1217 * android.car.permission.CONTROL_CAR_DOORS. 1218 */ 1219 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_DOORS) 1220 public static final int DOOR_LOCK = 371198722; 1221 /** 1222 * Mirror Z Position 1223 * The property is protected by the signature permission: 1224 * android.car.permission.CONTROL_CAR_MIRRORS. 1225 */ 1226 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1227 public static final int MIRROR_Z_POS = 339741504; 1228 /** 1229 * Mirror Z Move 1230 * The property is protected by the signature permission: 1231 * android.car.permission.CONTROL_CAR_MIRRORS. 1232 */ 1233 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1234 public static final int MIRROR_Z_MOVE = 339741505; 1235 /** 1236 * Mirror Y Position 1237 * The property is protected by the signature permission: 1238 * android.car.permission.CONTROL_CAR_MIRRORS. 1239 */ 1240 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1241 public static final int MIRROR_Y_POS = 339741506; 1242 /** 1243 * Mirror Y Move 1244 * The property is protected by the signature permission: 1245 * android.car.permission.CONTROL_CAR_MIRRORS. 1246 */ 1247 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1248 public static final int MIRROR_Y_MOVE = 339741507; 1249 /** 1250 * Mirror Lock 1251 * The property is protected by the signature permission: 1252 * android.car.permission.CONTROL_CAR_MIRRORS. 1253 */ 1254 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1255 public static final int MIRROR_LOCK = 287312708; 1256 /** 1257 * Mirror Fold 1258 * The property is protected by the signature permission: 1259 * android.car.permission.CONTROL_CAR_MIRRORS. 1260 */ 1261 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_MIRRORS) 1262 public static final int MIRROR_FOLD = 287312709; 1263 /** 1264 * Seat memory select 1265 * 1266 * This parameter selects the memory preset to use to select the seat 1267 * position. The minValue is always 0, and the maxValue determines the 1268 * number of seat positions available. 1269 * The property is protected by the signature permission: 1270 * android.car.permission.CONTROL_CAR_SEATS. 1271 */ 1272 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1273 public static final int SEAT_MEMORY_SELECT = 356518784; 1274 /** 1275 * Seat memory set 1276 * 1277 * This setting allows the user to save the current seat position settings 1278 * into the selected preset slot. The maxValue for each seat position 1279 * must match the maxValue for SEAT_MEMORY_SELECT. 1280 * The property is protected by the signature permission: 1281 * android.car.permission.CONTROL_CAR_SEATS. 1282 */ 1283 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1284 public static final int SEAT_MEMORY_SET = 356518785; 1285 /** 1286 * Seatbelt buckled 1287 * 1288 * True indicates belt is buckled. 1289 * The property is protected by the signature permission: 1290 * android.car.permission.CONTROL_CAR_SEATS. 1291 */ 1292 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1293 public static final int SEAT_BELT_BUCKLED = 354421634; 1294 /** 1295 * Seatbelt height position 1296 * The property is protected by the signature permission: 1297 * android.car.permission.CONTROL_CAR_SEATS. 1298 */ 1299 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1300 public static final int SEAT_BELT_HEIGHT_POS = 356518787; 1301 /** 1302 * Seatbelt height move 1303 * The property is protected by the signature permission: 1304 * android.car.permission.CONTROL_CAR_SEATS. 1305 */ 1306 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1307 public static final int SEAT_BELT_HEIGHT_MOVE = 356518788; 1308 /** 1309 * Seat fore/aft position 1310 * The property is protected by the signature permission: 1311 * android.car.permission.CONTROL_CAR_SEATS. 1312 */ 1313 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1314 public static final int SEAT_FORE_AFT_POS = 356518789; 1315 /** 1316 * Seat fore/aft move 1317 * The property is protected by the signature permission: 1318 * android.car.permission.CONTROL_CAR_SEATS. 1319 */ 1320 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1321 public static final int SEAT_FORE_AFT_MOVE = 356518790; 1322 /** 1323 * Seat backrest angle 1 position 1324 * The property is protected by the signature permission: 1325 * android.car.permission.CONTROL_CAR_SEATS. 1326 */ 1327 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1328 public static final int SEAT_BACKREST_ANGLE_1_POS = 356518791; 1329 /** 1330 * Seat backrest angle 1 move 1331 * 1332 * Moves the backrest forward or recline. 1333 * The property is protected by the signature permission: 1334 * android.car.permission.CONTROL_CAR_SEATS. 1335 */ 1336 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1337 public static final int SEAT_BACKREST_ANGLE_1_MOVE = 356518792; 1338 /** 1339 * Seat backrest angle 2 position 1340 * The property is protected by the signature permission: 1341 * android.car.permission.CONTROL_CAR_SEATS. 1342 */ 1343 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1344 public static final int SEAT_BACKREST_ANGLE_2_POS = 356518793; 1345 /** 1346 * Seat backrest angle 2 move 1347 * The property is protected by the signature permission: 1348 * android.car.permission.CONTROL_CAR_SEATS. 1349 */ 1350 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1351 public static final int SEAT_BACKREST_ANGLE_2_MOVE = 356518794; 1352 /** 1353 * Seat height position 1354 * The property is protected by the signature permission: 1355 * android.car.permission.CONTROL_CAR_SEATS. 1356 */ 1357 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1358 public static final int SEAT_HEIGHT_POS = 356518795; 1359 /** 1360 * Seat height move 1361 * The property is protected by the signature permission: 1362 * android.car.permission.CONTROL_CAR_SEATS. 1363 */ 1364 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1365 public static final int SEAT_HEIGHT_MOVE = 356518796; 1366 /** 1367 * Seat depth position 1368 * The property is protected by the signature permission: 1369 * android.car.permission.CONTROL_CAR_SEATS. 1370 */ 1371 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1372 public static final int SEAT_DEPTH_POS = 356518797; 1373 /** 1374 * Seat depth move 1375 * The property is protected by the signature permission: 1376 * android.car.permission.CONTROL_CAR_SEATS. 1377 */ 1378 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1379 public static final int SEAT_DEPTH_MOVE = 356518798; 1380 /** 1381 * Seat tilt position 1382 * The property is protected by the signature permission: 1383 * android.car.permission.CONTROL_CAR_SEATS. 1384 */ 1385 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1386 public static final int SEAT_TILT_POS = 356518799; 1387 /** 1388 * Seat tilt move 1389 * The property is protected by the signature permission: 1390 * android.car.permission.CONTROL_CAR_SEATS. 1391 */ 1392 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1393 public static final int SEAT_TILT_MOVE = 356518800; 1394 /** 1395 * Lumber fore/aft position 1396 * The property is protected by the signature permission: 1397 * android.car.permission.CONTROL_CAR_SEATS. 1398 */ 1399 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1400 public static final int SEAT_LUMBAR_FORE_AFT_POS = 356518801; 1401 /** 1402 * Lumbar fore/aft move 1403 * The property is protected by the signature permission: 1404 * android.car.permission.CONTROL_CAR_SEATS. 1405 */ 1406 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1407 public static final int SEAT_LUMBAR_FORE_AFT_MOVE = 356518802; 1408 /** 1409 * Lumbar side support position 1410 * The property is protected by the signature permission: 1411 * android.car.permission.CONTROL_CAR_SEATS. 1412 */ 1413 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1414 public static final int SEAT_LUMBAR_SIDE_SUPPORT_POS = 356518803; 1415 /** 1416 * Lumbar side support move 1417 * The property is protected by the signature permission: 1418 * android.car.permission.CONTROL_CAR_SEATS. 1419 */ 1420 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1421 public static final int SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 356518804; 1422 /** 1423 * Headrest height position 1424 * The property is protected by the signature permission: 1425 * android.car.permission.CONTROL_CAR_SEATS. 1426 */ 1427 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1428 public static final int SEAT_HEADREST_HEIGHT_POS = 289409941; 1429 /** 1430 * Headrest height move 1431 * The property is protected by the signature permission: 1432 * android.car.permission.CONTROL_CAR_SEATS. 1433 */ 1434 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1435 public static final int SEAT_HEADREST_HEIGHT_MOVE = 356518806; 1436 /** 1437 * Headrest angle position 1438 * The property is protected by the signature permission: 1439 * android.car.permission.CONTROL_CAR_SEATS. 1440 */ 1441 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1442 public static final int SEAT_HEADREST_ANGLE_POS = 356518807; 1443 /** 1444 * Headrest angle move 1445 * The property is protected by the signature permission: 1446 * android.car.permission.CONTROL_CAR_SEATS. 1447 */ 1448 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1449 public static final int SEAT_HEADREST_ANGLE_MOVE = 356518808; 1450 /** 1451 * Headrest fore/aft position 1452 * The property is protected by the signature permission: 1453 * android.car.permission.CONTROL_CAR_SEATS. 1454 */ 1455 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1456 public static final int SEAT_HEADREST_FORE_AFT_POS = 356518809; 1457 /** 1458 * Headrest fore/aft move 1459 * The property is protected by the signature permission: 1460 * android.car.permission.CONTROL_CAR_SEATS. 1461 */ 1462 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1463 public static final int SEAT_HEADREST_FORE_AFT_MOVE = 356518810; 1464 /** 1465 * Seat Occupancy 1466 * The property is protected by the signature permission: 1467 * android.car.permission.CONTROL_CAR_SEATS. 1468 */ 1469 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_SEATS) 1470 public static final int SEAT_OCCUPANCY = 356518832; 1471 /** 1472 * Window Position 1473 * The property is protected by the signature permission: 1474 * android.car.permission.CONTROL_CAR_WINDOWS 1475 */ 1476 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS) 1477 public static final int WINDOW_POS = 322964416; 1478 /** 1479 * Window Move 1480 * The property is protected by the signature permission: 1481 * android.car.permission.CONTROL_CAR_WINDOWS 1482 */ 1483 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS) 1484 public static final int WINDOW_MOVE = 322964417; 1485 /** 1486 * Window Lock 1487 * The property is protected by the signature permission: 1488 * android.car.permission.CONTROL_CAR_WINDOWS 1489 */ 1490 @RequiresPermission(Car.PERMISSION_CONTROL_CAR_WINDOWS) 1491 public static final int WINDOW_LOCK = 320867268; 1492 /** 1493 * Vehicle Maps Service (VMS) message 1494 * The property is protected by the signature permissions: 1495 * android.car.permission.VMS_PUBLISHER and android.car.permission.VMS_SUBSCRIBER. 1496 */ 1497 @RequiresPermission(anyOf = {Car.PERMISSION_VMS_PUBLISHER, Car.PERMISSION_VMS_SUBSCRIBER}) 1498 public static final int VEHICLE_MAP_SERVICE = 299895808; 1499 /** 1500 * OBD2 Live Sensor Data 1501 * 1502 * Reports a snapshot of the current (live) values of the OBD2 sensors available. 1503 * The property is protected by the signature permission: 1504 * android.car.permission.CAR_DIAGNOSTICS. 1505 */ 1506 @RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL) 1507 public static final int OBD2_LIVE_FRAME = 299896064; 1508 /** 1509 * OBD2 Freeze Frame Sensor Data 1510 * 1511 * Reports a snapshot of the value of the OBD2 sensors available at the time that a fault 1512 * occurred and was detected. 1513 * The property is protected by the signature permission: 1514 * android.car.permission.CAR_DIAGNOSTICS. 1515 */ 1516 @RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL) 1517 public static final int OBD2_FREEZE_FRAME = 299896065; 1518 /** 1519 * OBD2 Freeze Frame Information 1520 * The property is protected by the signature permission: 1521 * android.car.permission.CAR_DIAGNOSTICS. 1522 */ 1523 @RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL) 1524 public static final int OBD2_FREEZE_FRAME_INFO = 299896066; 1525 /** 1526 * OBD2 Freeze Frame Clear 1527 * 1528 * This property allows deletion of any of the freeze frames stored in 1529 * vehicle memory, as described by OBD2_FREEZE_FRAME_INFO. 1530 * The property is protected by the signature permission: 1531 * android.car.permission.CLEAR_CAR_DIAGNOSTICS. 1532 */ 1533 @RequiresPermission(Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR) 1534 public static final int OBD2_FREEZE_FRAME_CLEAR = 299896067; 1535 /** 1536 * Headlights State 1537 * The property is protected by the signature permission: 1538 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1539 */ 1540 @RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS) 1541 public static final int HEADLIGHTS_STATE = 289410560; 1542 /** 1543 * High beam lights state 1544 * The property is protected by the signature permission: 1545 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1546 */ 1547 @RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS) 1548 public static final int HIGH_BEAM_LIGHTS_STATE = 289410561; 1549 /** 1550 * Fog light state 1551 * The property is protected by the signature permission: 1552 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1553 */ 1554 @RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS) 1555 public static final int FOG_LIGHTS_STATE = 289410562; 1556 /** 1557 * Hazard light status 1558 * The property is protected by the signature permission: 1559 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1560 */ 1561 @RequiresPermission(Car.PERMISSION_EXTERIOR_LIGHTS) 1562 public static final int HAZARD_LIGHTS_STATE = 289410563; 1563 /** 1564 * Headlight switch 1565 * The property is protected by the signature permission: 1566 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1567 */ 1568 @RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS) 1569 public static final int HEADLIGHTS_SWITCH = 289410576; 1570 /** 1571 * High beam light switch 1572 * The property is protected by the signature permission: 1573 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1574 */ 1575 @RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS) 1576 public static final int HIGH_BEAM_LIGHTS_SWITCH = 289410577; 1577 /** 1578 * Fog light switch 1579 * The property is protected by the signature permission: 1580 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1581 */ 1582 @RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS) 1583 public static final int FOG_LIGHTS_SWITCH = 289410578; 1584 /** 1585 * Hazard light switch 1586 * The property is protected by the signature permission: 1587 * android.car.permission.CAR_EXTERIOR_LIGHTS. 1588 */ 1589 @RequiresPermission(Car.PERMISSION_CONTROL_EXTERIOR_LIGHTS) 1590 public static final int HAZARD_LIGHTS_SWITCH = 289410579; 1591 /** 1592 * Cabin lights 1593 * Requires permission: {@link Car#PERMISSION_READ_INTERIOR_LIGHTS}. 1594 */ 1595 @RequiresPermission(Car.PERMISSION_READ_INTERIOR_LIGHTS) 1596 public static final int CABIN_LIGHTS_STATE = 289410817; 1597 /** 1598 * Cabin lights switch 1599 * Requires permission: {@link Car#PERMISSION_CONTROL_INTERIOR_LIGHTS}. 1600 */ 1601 @RequiresPermission(Car.PERMISSION_CONTROL_INTERIOR_LIGHTS) 1602 public static final int CABIN_LIGHTS_SWITCH = 289410818; 1603 /** 1604 * Reading lights 1605 * Requires permission: {@link Car#PERMISSION_READ_INTERIOR_LIGHTS}. 1606 */ 1607 @RequiresPermission(Car.PERMISSION_READ_INTERIOR_LIGHTS) 1608 public static final int READING_LIGHTS_STATE = 356519683; 1609 /** 1610 * Reading lights switch 1611 * Requires permission: {@link Car#PERMISSION_CONTROL_INTERIOR_LIGHTS}. 1612 */ 1613 @RequiresPermission(Car.PERMISSION_CONTROL_INTERIOR_LIGHTS) 1614 public static final int READING_LIGHTS_SWITCH = 356519684; 1615 1616 /** 1617 * Property to get the initial settings for multi-user management (such as initial user). 1618 * 1619 * <p>Doesn't require permission because it's not exposed through 1620 * {@link android.car.hardware.property.CarPropertyManager}. 1621 * 1622 * @hide 1623 */ 1624 public static final int INITIAL_USER_INFO = 299896583; 1625 1626 /** 1627 * Property to switch user for multi-user management. 1628 * 1629 * <p>Doesn't require permission because it's not exposed through 1630 * {@link android.car.hardware.property.CarPropertyManager}. 1631 * 1632 * @hide 1633 */ 1634 public static final int SWITCH_USER = 299896584; 1635 1636 /** 1637 * Property to create a new user for multi-user management. 1638 * 1639 * <p>Doesn't require permission because it's not exposed through 1640 * {@link android.car.hardware.property.CarPropertyManager}. 1641 * 1642 * @hide 1643 */ 1644 public static final int CREATE_USER = 299896585; 1645 1646 /** 1647 * Property to remove a new user for multi-user management. 1648 * 1649 * <p>Doesn't require permission because it's not exposed through 1650 * {@link android.car.hardware.property.CarPropertyManager}. 1651 * 1652 * @hide 1653 */ 1654 public static final int REMOVE_USER = 299896586; 1655 1656 /** 1657 * Property to get / set the user authentication types associated with an Android user. 1658 * 1659 * <p>Doesn't require permission because it's not exposed through 1660 * {@link android.car.hardware.property.CarPropertyManager}. 1661 * 1662 * @hide 1663 */ 1664 public static final int USER_IDENTIFICATION_ASSOCIATION = 299896587; 1665 1666 /** 1667 * Property for VHAL to apply power policy. 1668 * 1669 * <p>Doesn't require permission because it's not exposed through 1670 * {@link android.car.hardware.property.CarPropertyManager}. 1671 * 1672 * @hide 1673 */ 1674 public static final int POWER_POLICY_REQ = 286265121; 1675 1676 /** 1677 * Property for VHAL to set the default power policies per power status transition. 1678 * 1679 * <p>Doesn't require permission because it's not exposed through 1680 * {@link android.car.hardware.property.CarPropertyManager}. 1681 * 1682 * @hide 1683 */ 1684 public static final int POWER_POLICY_GROUP_REQ = 286265122; 1685 1686 /** 1687 * Property to report a new current power policy to VHAL. 1688 * 1689 * <p>Doesn't require permission because it's not exposed through 1690 * {@link android.car.hardware.property.CarPropertyManager}. 1691 * 1692 * @hide 1693 */ 1694 public static final int CURRENT_POWER_POLICY = 286265123; 1695 1696 /** 1697 * Property to report that car watchdog is alive. 1698 * 1699 * <p>Doesn't require permission because it's not exposed through 1700 * {@link android.car.hardware.property.CarPropertyManager}. 1701 * 1702 * @hide 1703 */ 1704 public static final int WATCHDOG_ALIVE = 290459441; 1705 1706 /** 1707 * Property to report a process terminated by car watchdog. 1708 * 1709 * <p>Doesn't require permission because it's not exposed through 1710 * {@link android.car.hardware.property.CarPropertyManager}. 1711 * 1712 * @hide 1713 */ 1714 public static final int WATCHDOG_TERMINATED_PROCESS = 299896626; 1715 1716 /** 1717 * Property to signal a heartbeat from VHAL. 1718 * 1719 * <p>Doesn't require permission because it's not exposed through 1720 * {@link android.car.hardware.property.CarPropertyManager}. 1721 * 1722 * @hide 1723 */ 1724 public static final int VHAL_HEARTBEAT = 290459443; 1725 1726 /** 1727 * Property to start the ClusterUI in cluster display. 1728 * 1729 * <p>Doesn't require permission because it's not exposed through 1730 * {@link android.car.hardware.property.CarPropertyManager}. 1731 * 1732 * @hide 1733 */ 1734 public static final int CLUSTER_SWITCH_UI = 289410868; 1735 1736 /** 1737 * Property to change the state of the cluster display. 1738 * 1739 * <p>Doesn't require permission because it's not exposed through 1740 * {@link android.car.hardware.property.CarPropertyManager}. 1741 * 1742 * @hide 1743 */ 1744 public static final int CLUSTER_DISPLAY_STATE = 289476405; 1745 1746 /** 1747 * Property to reports the current display and ClusterUI statue. 1748 * 1749 * <p>Doesn't require permission because it's not exposed through 1750 * {@link android.car.hardware.property.CarPropertyManager}. 1751 * 1752 * @hide 1753 */ 1754 public static final int CLUSTER_REPORT_STATE = 299896630; 1755 1756 /** 1757 * Property to request to change the cluster display state to show some ClusterUI. 1758 * 1759 * <p>Doesn't require permission because it's not exposed through 1760 * {@link android.car.hardware.property.CarPropertyManager}. 1761 * 1762 * @hide 1763 */ 1764 public static final int CLUSTER_REQUEST_DISPLAY = 289410871; 1765 1766 /** 1767 * Property to inform the current navigation state. 1768 * 1769 * <p>Doesn't require permission because it's not exposed through 1770 * {@link android.car.hardware.property.CarPropertyManager}. 1771 * 1772 * @hide 1773 */ 1774 public static final int CLUSTER_NAVIGATION_STATE = 292556600; 1775 1776 /** 1777 * Current date and time, encoded as Unix time. 1778 * 1779 * <p>This value denotes the number of milliseconds that have elapsed since 1/1/1970 UTC. 1780 */ 1781 @RequiresPermission(Car.PERMISSION_CAR_EPOCH_TIME) 1782 public static final int EPOCH_TIME = 290457094; 1783 1784 /** 1785 * External encryption binding seed. 1786 * 1787 * <p>This value is mixed with the local storage encryption seed. This property holds 16 bytes, 1788 * and is expected to be persisted on an ECU separate from the IVI. The property is initially 1789 * set by AAOS, who generates it using a CSRNG. AAOS will then read the property on subsequent 1790 * boots. 1791 */ 1792 @RequiresPermission(Car.PERMISSION_STORAGE_ENCRYPTION_BINDING_SEED) 1793 public static final int STORAGE_ENCRYPTION_BINDING_SEED = 292554247; 1794 1795 /** 1796 * Electronic Toll Collection card type. 1797 * 1798 * <p>This property indicates the type of ETC(Electronic Toll Collection) card in the vehicle. 1799 * If the head unit is aware of an ETC card attached to the vehicle, this property should 1800 * return the type of card attached; otherwise, this property should be UNAVAILABLE. The 1801 * property value should be one of {@link VehicleElectronicTollCollectionCardType}. 1802 * 1803 * <ul> 1804 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 1805 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1806 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1807 * <li>{@code Integer} property type 1808 * </ul> 1809 * 1810 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 1811 */ 1812 @RequiresPermission(Car.PERMISSION_CAR_INFO) 1813 public static final int ELECTRONIC_TOLL_COLLECTION_CARD_TYPE = 289410873; 1814 1815 /** 1816 * Electronic Toll Collection card status. 1817 * 1818 * <p>This property indicates the status of ETC(Electronic Toll Collection) card in the 1819 * vehicle. If the head unit is aware of an ETC card attached to the vehicle, ETC_CARD_STATUS 1820 * gives that status of the card; otherwise, this property should be UNAVAILABLE. The property 1821 * value should be one of {@link VehicleElectronicTollCollectionCardStatus}. 1822 * 1823 * <ul> 1824 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_ACCESS_READ} 1825 * <li>{@link VehicleAreaType#VEHICLE_AREA_TYPE_GLOBAL} 1826 * <li>{@link android.car.hardware.CarPropertyConfig#VEHICLE_PROPERTY_CHANGE_MODE_ONCHANGE} 1827 * <li>{@code Integer} property type 1828 * </ul> 1829 * 1830 * <p>Requires permission: {@link Car#PERMISSION_CAR_INFO}. 1831 */ 1832 @RequiresPermission(Car.PERMISSION_CAR_INFO) 1833 public static final int ELECTRONIC_TOLL_COLLECTION_CARD_STATUS = 289410874; 1834 1835 /** 1836 * @deprecated to prevent others from instantiating this class 1837 */ 1838 @Deprecated VehiclePropertyIds()1839 public VehiclePropertyIds() { 1840 } 1841 1842 /** 1843 * Gets a user-friendly representation of a property. 1844 */ toString(int property)1845 public static String toString(int property) { 1846 switch (property) { 1847 case INVALID: 1848 return "INVALID"; 1849 case INFO_VIN: 1850 return "INFO_VIN"; 1851 case INFO_MAKE: 1852 return "INFO_MAKE"; 1853 case INFO_MODEL: 1854 return "INFO_MODEL"; 1855 case INFO_MODEL_YEAR: 1856 return "INFO_MODEL_YEAR"; 1857 case INFO_FUEL_CAPACITY: 1858 return "INFO_FUEL_CAPACITY"; 1859 case INFO_FUEL_TYPE: 1860 return "INFO_FUEL_TYPE"; 1861 case INFO_EV_BATTERY_CAPACITY: 1862 return "INFO_EV_BATTERY_CAPACITY"; 1863 case INFO_MULTI_EV_PORT_LOCATIONS: 1864 return "INFO_MULTI_EV_PORT_LOCATIONS"; 1865 case INFO_EV_CONNECTOR_TYPE: 1866 return "INFO_EV_CONNECTOR_TYPE"; 1867 case INFO_FUEL_DOOR_LOCATION: 1868 return "INFO_FUEL_DOOR_LOCATION"; 1869 case INFO_EV_PORT_LOCATION: 1870 return "INFO_EV_PORT_LOCATION"; 1871 case INFO_DRIVER_SEAT: 1872 return "INFO_DRIVER_SEAT"; 1873 case INFO_EXTERIOR_DIMENSIONS: 1874 return "INFO_EXTERIOR_DIMENSIONS"; 1875 case PERF_ODOMETER: 1876 return "PERF_ODOMETER"; 1877 case PERF_VEHICLE_SPEED: 1878 return "PERF_VEHICLE_SPEED"; 1879 case PERF_VEHICLE_SPEED_DISPLAY: 1880 return "PERF_VEHICLE_SPEED_DISPLAY"; 1881 case PERF_STEERING_ANGLE: 1882 return "PERF_STEERING_ANGLE"; 1883 case PERF_REAR_STEERING_ANGLE: 1884 return "PERF_REAR_STEERING_ANGLE"; 1885 case ENGINE_COOLANT_TEMP: 1886 return "ENGINE_COOLANT_TEMP"; 1887 case ENGINE_OIL_LEVEL: 1888 return "ENGINE_OIL_LEVEL"; 1889 case ENGINE_OIL_TEMP: 1890 return "ENGINE_OIL_TEMP"; 1891 case ENGINE_RPM: 1892 return "ENGINE_RPM"; 1893 case WHEEL_TICK: 1894 return "WHEEL_TICK"; 1895 case FUEL_LEVEL: 1896 return "FUEL_LEVEL"; 1897 case FUEL_DOOR_OPEN: 1898 return "FUEL_DOOR_OPEN"; 1899 case EV_BATTERY_LEVEL: 1900 return "EV_BATTERY_LEVEL"; 1901 case EV_CHARGE_PORT_OPEN: 1902 return "EV_CHARGE_PORT_OPEN"; 1903 case EV_CHARGE_PORT_CONNECTED: 1904 return "EV_CHARGE_PORT_CONNECTED"; 1905 case EV_BATTERY_INSTANTANEOUS_CHARGE_RATE: 1906 return "EV_BATTERY_INSTANTANEOUS_CHARGE_RATE"; 1907 case RANGE_REMAINING: 1908 return "RANGE_REMAINING"; 1909 case TIRE_PRESSURE: 1910 return "TIRE_PRESSURE"; 1911 case CRITICALLY_LOW_TIRE_PRESSURE: 1912 return "CRITICALLY_LOW_TIRE_PRESSURE"; 1913 case GEAR_SELECTION: 1914 return "GEAR_SELECTION"; 1915 case CURRENT_GEAR: 1916 return "CURRENT_GEAR"; 1917 case PARKING_BRAKE_ON: 1918 return "PARKING_BRAKE_ON"; 1919 case PARKING_BRAKE_AUTO_APPLY: 1920 return "PARKING_BRAKE_AUTO_APPLY"; 1921 case FUEL_LEVEL_LOW: 1922 return "FUEL_LEVEL_LOW"; 1923 case NIGHT_MODE: 1924 return "NIGHT_MODE"; 1925 case TURN_SIGNAL_STATE: 1926 return "TURN_SIGNAL_STATE"; 1927 case IGNITION_STATE: 1928 return "IGNITION_STATE"; 1929 case ABS_ACTIVE: 1930 return "ABS_ACTIVE"; 1931 case TRACTION_CONTROL_ACTIVE: 1932 return "TRACTION_CONTROL_ACTIVE"; 1933 case HVAC_FAN_SPEED: 1934 return "HVAC_FAN_SPEED"; 1935 case HVAC_FAN_DIRECTION: 1936 return "HVAC_FAN_DIRECTION"; 1937 case HVAC_TEMPERATURE_CURRENT: 1938 return "HVAC_TEMPERATURE_CURRENT"; 1939 case HVAC_TEMPERATURE_SET: 1940 return "HVAC_TEMPERATURE_SET"; 1941 case HVAC_TEMPERATURE_VALUE_SUGGESTION: 1942 return "HVAC_TEMPERATURE_VALUE_SUGGESTION"; 1943 case HVAC_DEFROSTER: 1944 return "HVAC_DEFROSTER"; 1945 case HVAC_AC_ON: 1946 return "HVAC_AC_ON"; 1947 case HVAC_MAX_AC_ON: 1948 return "HVAC_MAX_AC_ON"; 1949 case HVAC_MAX_DEFROST_ON: 1950 return "HVAC_MAX_DEFROST_ON"; 1951 case HVAC_RECIRC_ON: 1952 return "HVAC_RECIRC_ON"; 1953 case HVAC_DUAL_ON: 1954 return "HVAC_DUAL_ON"; 1955 case HVAC_AUTO_ON: 1956 return "HVAC_AUTO_ON"; 1957 case HVAC_SEAT_TEMPERATURE: 1958 return "HVAC_SEAT_TEMPERATURE"; 1959 case HVAC_SIDE_MIRROR_HEAT: 1960 return "HVAC_SIDE_MIRROR_HEAT"; 1961 case HVAC_STEERING_WHEEL_HEAT: 1962 return "HVAC_STEERING_WHEEL_HEAT"; 1963 case HVAC_TEMPERATURE_DISPLAY_UNITS: 1964 return "HVAC_TEMPERATURE_DISPLAY_UNITS"; 1965 case HVAC_ACTUAL_FAN_SPEED_RPM: 1966 return "HVAC_ACTUAL_FAN_SPEED_RPM"; 1967 case HVAC_POWER_ON: 1968 return "HVAC_POWER_ON"; 1969 case HVAC_FAN_DIRECTION_AVAILABLE: 1970 return "HVAC_FAN_DIRECTION_AVAILABLE"; 1971 case HVAC_AUTO_RECIRC_ON: 1972 return "HVAC_AUTO_RECIRC_ON"; 1973 case HVAC_SEAT_VENTILATION: 1974 return "HVAC_SEAT_VENTILATION"; 1975 case HVAC_ELECTRIC_DEFROSTER_ON: 1976 return "HVAC_ELECTRIC_DEFROSTER_ON"; 1977 case DISTANCE_DISPLAY_UNITS: 1978 return "DISTANCE_DISPLAY_UNITS"; 1979 case FUEL_VOLUME_DISPLAY_UNITS: 1980 return "FUEL_VOLUME_DISPLAY_UNITS"; 1981 case TIRE_PRESSURE_DISPLAY_UNITS: 1982 return "TIRE_PRESSURE_DISPLAY_UNITS"; 1983 case EV_BATTERY_DISPLAY_UNITS: 1984 return "EV_BATTERY_DISPLAY_UNITS"; 1985 case FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME: 1986 return "FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME"; 1987 case ENV_OUTSIDE_TEMPERATURE: 1988 return "ENV_OUTSIDE_TEMPERATURE"; 1989 case AP_POWER_STATE_REQ: 1990 return "AP_POWER_STATE_REQ"; 1991 case AP_POWER_STATE_REPORT: 1992 return "AP_POWER_STATE_REPORT"; 1993 case AP_POWER_BOOTUP_REASON: 1994 return "AP_POWER_BOOTUP_REASON"; 1995 case DISPLAY_BRIGHTNESS: 1996 return "DISPLAY_BRIGHTNESS"; 1997 case HW_KEY_INPUT: 1998 return "HW_KEY_INPUT"; 1999 case DOOR_POS: 2000 return "DOOR_POS"; 2001 case DOOR_MOVE: 2002 return "DOOR_MOVE"; 2003 case DOOR_LOCK: 2004 return "DOOR_LOCK"; 2005 case MIRROR_Z_POS: 2006 return "MIRROR_Z_POS"; 2007 case MIRROR_Z_MOVE: 2008 return "MIRROR_Z_MOVE"; 2009 case MIRROR_Y_POS: 2010 return "MIRROR_Y_POS"; 2011 case MIRROR_Y_MOVE: 2012 return "MIRROR_Y_MOVE"; 2013 case MIRROR_LOCK: 2014 return "MIRROR_LOCK"; 2015 case MIRROR_FOLD: 2016 return "MIRROR_FOLD"; 2017 case SEAT_MEMORY_SELECT: 2018 return "SEAT_MEMORY_SELECT"; 2019 case SEAT_MEMORY_SET: 2020 return "SEAT_MEMORY_SET"; 2021 case SEAT_BELT_BUCKLED: 2022 return "SEAT_BELT_BUCKLED"; 2023 case SEAT_BELT_HEIGHT_POS: 2024 return "SEAT_BELT_HEIGHT_POS"; 2025 case SEAT_BELT_HEIGHT_MOVE: 2026 return "SEAT_BELT_HEIGHT_MOVE"; 2027 case SEAT_FORE_AFT_POS: 2028 return "SEAT_FORE_AFT_POS"; 2029 case SEAT_FORE_AFT_MOVE: 2030 return "SEAT_FORE_AFT_MOVE"; 2031 case SEAT_BACKREST_ANGLE_1_POS: 2032 return "SEAT_BACKREST_ANGLE_1_POS"; 2033 case SEAT_BACKREST_ANGLE_1_MOVE: 2034 return "SEAT_BACKREST_ANGLE_1_MOVE"; 2035 case SEAT_BACKREST_ANGLE_2_POS: 2036 return "SEAT_BACKREST_ANGLE_2_POS"; 2037 case SEAT_BACKREST_ANGLE_2_MOVE: 2038 return "SEAT_BACKREST_ANGLE_2_MOVE"; 2039 case SEAT_HEIGHT_POS: 2040 return "SEAT_HEIGHT_POS"; 2041 case SEAT_HEIGHT_MOVE: 2042 return "SEAT_HEIGHT_MOVE"; 2043 case SEAT_DEPTH_POS: 2044 return "SEAT_DEPTH_POS"; 2045 case SEAT_DEPTH_MOVE: 2046 return "SEAT_DEPTH_MOVE"; 2047 case SEAT_TILT_POS: 2048 return "SEAT_TILT_POS"; 2049 case SEAT_TILT_MOVE: 2050 return "SEAT_TILT_MOVE"; 2051 case SEAT_LUMBAR_FORE_AFT_POS: 2052 return "SEAT_LUMBAR_FORE_AFT_POS"; 2053 case SEAT_LUMBAR_FORE_AFT_MOVE: 2054 return "SEAT_LUMBAR_FORE_AFT_MOVE"; 2055 case SEAT_LUMBAR_SIDE_SUPPORT_POS: 2056 return "SEAT_LUMBAR_SIDE_SUPPORT_POS"; 2057 case SEAT_LUMBAR_SIDE_SUPPORT_MOVE: 2058 return "SEAT_LUMBAR_SIDE_SUPPORT_MOVE"; 2059 case SEAT_HEADREST_HEIGHT_POS: 2060 return "SEAT_HEADREST_HEIGHT_POS"; 2061 case SEAT_HEADREST_HEIGHT_MOVE: 2062 return "SEAT_HEADREST_HEIGHT_MOVE"; 2063 case SEAT_HEADREST_ANGLE_POS: 2064 return "SEAT_HEADREST_ANGLE_POS"; 2065 case SEAT_HEADREST_ANGLE_MOVE: 2066 return "SEAT_HEADREST_ANGLE_MOVE"; 2067 case SEAT_HEADREST_FORE_AFT_POS: 2068 return "SEAT_HEADREST_FORE_AFT_POS"; 2069 case SEAT_HEADREST_FORE_AFT_MOVE: 2070 return "SEAT_HEADREST_FORE_AFT_MOVE"; 2071 case SEAT_OCCUPANCY: 2072 return "SEAT_OCCUPANCY"; 2073 case WINDOW_POS: 2074 return "WINDOW_POS"; 2075 case WINDOW_MOVE: 2076 return "WINDOW_MOVE"; 2077 case WINDOW_LOCK: 2078 return "WINDOW_LOCK"; 2079 case VEHICLE_MAP_SERVICE: 2080 return "VEHICLE_MAP_SERVICE"; 2081 case OBD2_LIVE_FRAME: 2082 return "OBD2_LIVE_FRAME"; 2083 case OBD2_FREEZE_FRAME: 2084 return "OBD2_FREEZE_FRAME"; 2085 case OBD2_FREEZE_FRAME_INFO: 2086 return "OBD2_FREEZE_FRAME_INFO"; 2087 case OBD2_FREEZE_FRAME_CLEAR: 2088 return "OBD2_FREEZE_FRAME_CLEAR"; 2089 case HEADLIGHTS_STATE: 2090 return "HEADLIGHTS_STATE"; 2091 case HIGH_BEAM_LIGHTS_STATE: 2092 return "HIGH_BEAM_LIGHTS_STATE"; 2093 case FOG_LIGHTS_STATE: 2094 return "FOG_LIGHTS_STATE"; 2095 case HAZARD_LIGHTS_STATE: 2096 return "HAZARD_LIGHTS_STATE"; 2097 case HEADLIGHTS_SWITCH: 2098 return "HEADLIGHTS_SWITCH"; 2099 case HIGH_BEAM_LIGHTS_SWITCH: 2100 return "HIGH_BEAM_LIGHTS_SWITCH"; 2101 case FOG_LIGHTS_SWITCH: 2102 return "FOG_LIGHTS_SWITCH"; 2103 case HAZARD_LIGHTS_SWITCH: 2104 return "HAZARD_LIGHTS_SWITCH"; 2105 case CABIN_LIGHTS_STATE: 2106 return "CABIN_LIGHTS_STATE"; 2107 case CABIN_LIGHTS_SWITCH: 2108 return "CABIN_LIGHTS_SWITCH"; 2109 case READING_LIGHTS_STATE: 2110 return "READING_LIGHTS_STATE"; 2111 case READING_LIGHTS_SWITCH: 2112 return "READING_LIGHTS_SWITCH"; 2113 case VEHICLE_SPEED_DISPLAY_UNITS: 2114 return "VEHICLE_SPEED_DISPLAY_UNITS"; 2115 case INITIAL_USER_INFO: 2116 return "INITIAL_USER_INFO"; 2117 case SWITCH_USER: 2118 return "SWITCH_USER"; 2119 case CREATE_USER: 2120 return "CREATE_USER"; 2121 case REMOVE_USER: 2122 return "REMOVE_USER"; 2123 case USER_IDENTIFICATION_ASSOCIATION: 2124 return "USER_IDENTIFICATION_ASSOCIATION"; 2125 case POWER_POLICY_REQ: 2126 return "POWER_POLICY_REQ"; 2127 case POWER_POLICY_GROUP_REQ: 2128 return "POWER_POLICY_GROUP_REQ"; 2129 case CURRENT_POWER_POLICY: 2130 return "CURRENT_POWER_POLICY"; 2131 case WATCHDOG_ALIVE: 2132 return "WATCHDOG_ALIVE"; 2133 case WATCHDOG_TERMINATED_PROCESS: 2134 return "WATCHDOG_TERMINATED_PROCESS"; 2135 case VHAL_HEARTBEAT: 2136 return "VHAL_HEARTBEAT"; 2137 case CLUSTER_SWITCH_UI: 2138 return "CLUSTER_SWITCH_UI"; 2139 case CLUSTER_DISPLAY_STATE: 2140 return "CLUSTER_DISPLAY_STATE"; 2141 case CLUSTER_REPORT_STATE: 2142 return "CLUSTER_REPORT_STATE"; 2143 case CLUSTER_REQUEST_DISPLAY: 2144 return "CLUSTER_REQUEST_DISPLAY"; 2145 case CLUSTER_NAVIGATION_STATE: 2146 return "CLUSTER_NAVIGATION_STATE"; 2147 case EPOCH_TIME: 2148 return "EPOCH_TIME"; 2149 case STORAGE_ENCRYPTION_BINDING_SEED: 2150 return "STORAGE_ENCRYPTION_BINDING_SEED"; 2151 case ELECTRONIC_TOLL_COLLECTION_CARD_STATUS: 2152 return "ELECTRONIC_TOLL_COLLECTION_CARD_STATUS"; 2153 case ELECTRONIC_TOLL_COLLECTION_CARD_TYPE: 2154 return "ELECTRONIC_TOLL_COLLECTION_CARD_TYPE"; 2155 default: 2156 return "0x" + Integer.toHexString(property); 2157 } 2158 } 2159 } 2160