1 # This file describes the properties of a given virtual device configuration file. 2 # 3 # Note: Most top-level properties are boolean that control whether a feature is 4 # present or not. Sub-features that depend on it are ignored if their 5 # parent is set to 'false' or 'no' 6 # 7 # This file is parsed by 'android/scripts/gen-hw-config.py' to generate 8 # 'android/avd/hw-config-defs.h'. The latter is a special header containing 9 # macro statements that is used several times: 10 # 11 # - once to define the fields of the AndroidHwConfig structure 12 # (see android/avd/hw-config.h) 13 # 14 # - once to implement the hardware configuration loader 15 # (see android/avd/hw-config.h) 16 # 17 # It is also packaged by the SDK and parsed by tools to let the developers 18 # create AVDs. 19 # 20 # NOTE: if you remove items from this file, be sure that you do not break 21 # the emulator build. 22 # 23 24 # CPU Architecture 25 name = hw.cpu.arch 26 type = string 27 default = arm 28 abstract = CPU Architecture 29 description = The CPU Architecture to emulator 30 31 # CPU Model 32 # Leave it empty, and the default value will be computed from 33 # hw.cpu.arch. This is only useful for experimentation for now. 34 name = hw.cpu.model 35 type = string 36 default = 37 abstract = CPU model 38 description = The CPU model (QEMU-specific string) 39 40 # SMP count: Number of processors to emulate when SMP is supported. 41 # Must be > 0. 42 name = hw.cpu.ncore 43 type = integer 44 default = 2 45 abstract = SMP CPU core count 46 description = Number of cores in a simulated SMP CPU. 47 48 # Ram size 49 # Default value will be computed based on screen pixels 50 # or skin version 51 name = hw.ramSize 52 type = integer 53 default = 0 54 abstract = Device ram size 55 description = The amount of physical RAM on the device, in megabytes. 56 57 # Touch screen type 58 name = hw.screen 59 type = string 60 enum = touch, multi-touch, no-touch 61 default = multi-touch 62 abstract = Touch screen type 63 description = Defines type of the screen. 64 65 # Hardware main keys (back/home) 66 name = hw.mainKeys 67 type = boolean 68 default = yes 69 abstract = Hardware Back/Home keys 70 description = Whether there are hardware back/home keys on the device. 71 72 # Trackball support 73 name = hw.trackBall 74 type = boolean 75 default = yes 76 abstract = Track-ball support 77 description = Whether there is a trackball on the device. 78 79 # Keyboard support (qwerty/azerty) 80 name = hw.keyboard 81 type = boolean 82 default = no 83 abstract = Keyboard support 84 description = Whether the device has a QWERTY keyboard. 85 86 # Keyboard lid support 87 # (I.e. can the qwerty keyboard be closed/hidden or opened/visible) 88 # this will be ignored if hw.keyboard is false 89 # 90 # NOTE: As a special case, the default value will be 'false' if the 91 # AVD targets API level 12 or higher. See hwConfig_init() 92 # in external/qemu/android/avd/hw-config.c for more details. 93 # 94 name = hw.keyboard.lid 95 type = boolean 96 default = yes 97 abstract = Keyboard lid support 98 description = Whether the QWERTY keyboard can be opened/closed. 99 100 # The name of the hardware charmap for this device. 101 # 102 # NOTE: This should always be the default 'qwerty2' unless you have 103 # modified the system image accordingly. This name is sent to 104 # the kernel at boot time. Using an incorrect name will result 105 # in an unusable machine. 106 name = hw.keyboard.charmap 107 type = string 108 default = qwerty2 109 abstract = Keyboard charmap name 110 description = Name of the system keyboard charmap file. 111 112 # DPad keys 113 name = hw.dPad 114 type = boolean 115 default = yes 116 abstract = DPad support 117 description = Whether the device has DPad keys 118 119 # Rotary input 120 name = hw.rotaryInput 121 type = boolean 122 default = no 123 abstract = Rotary input support 124 description = Whether the device has rotary input 125 126 # GSM Modem support 127 name = hw.gsmModem 128 type = boolean 129 default = yes 130 abstract = GSM modem support 131 description = Whether there is a GSM modem in the device. 132 133 # GPS support 134 name = hw.gps 135 type = boolean 136 default = yes 137 abstract = GPS support 138 description = Whether there is a GPS in the device. 139 140 # Battery 141 name = hw.battery 142 type = boolean 143 default = yes 144 abstract = Battery support 145 description = Whether the device can run on a battery. 146 147 # Accelerometer (used for auto-rotation) 148 name = hw.accelerometer 149 type = boolean 150 default = yes 151 abstract = Accelerometer 152 description = Whether there is an accelerometer in the device. 153 154 # Gyroscope (used for VR) 155 name = hw.gyroscope 156 type = boolean 157 default = yes 158 abstract = Gyroscope 159 description = Whether there is a gyroscope in the device. 160 161 # Audio input 162 name = hw.audioInput 163 type = boolean 164 default = yes 165 abstract = Audio recording support 166 description = Whether the device can record audio 167 168 # Audio output 169 name = hw.audioOutput 170 type = boolean 171 default = yes 172 abstract = Audio playback support 173 description = Whether the device can play audio 174 175 # SDCard support 176 name = hw.sdCard 177 type = boolean 178 default = yes 179 abstract = SD Card support 180 description = Whether the device supports insertion/removal of virtual SD Cards. 181 182 name = hw.sdCard.path 183 type = string 184 default = 185 abstract = SD Card image path 186 187 name = hw.logcatOutput.path 188 type = string 189 default = 190 abstract = Logcat Output File Path 191 192 # Cache partition 193 name = disk.cachePartition 194 type = boolean 195 default = yes 196 abstract = Cache partition support 197 description = Whether we use a /cache partition on the device. 198 199 name = disk.cachePartition.path 200 type = string 201 default = 202 abstract = Cache partition 203 description = Cache partition to use on the device. Ignored if disk.cachePartition is not 'yes'. 204 205 name = disk.cachePartition.size 206 type = diskSize 207 abstract = Cache partition size 208 default = 66MB 209 210 name = test.quitAfterBootTimeOut 211 type = integer 212 default = -1 213 abstract = Quit emulator after guest boots completely, or after time out. Default: end of universe. 214 215 # LCD width 216 name = hw.lcd.width 217 type = integer 218 default = 320 219 abstract = LCD pixel width 220 221 name = hw.lcd.height 222 type = integer 223 default = 640 224 abstract = LCD pixel height 225 226 name = hw.lcd.depth 227 type = integer 228 enum = 16, 32 229 default = 16 230 abstract = LCD color depth 231 description = Color bit depth of emulated framebuffer. 232 233 # LCD density 234 name = hw.lcd.density 235 type = integer 236 enum = 120, 160, 240, 213, 320 237 default = 160 238 abstract = Abstracted LCD density 239 description = A value used to roughly describe the density of the LCD screen for automatic resource/asset selection. 240 241 # LCD backlight - Enable/Disable LCD backlight simulation 242 # default = no : Disabled 243 # default = yes : Enabled 244 name = hw.lcd.backlight 245 type = boolean 246 default = yes 247 abstract = LCD backlight 248 description = Enable/Disable LCD backlight simulation,yes-enabled,no-disabled. 249 250 # Hardware OpenGLES emulation support 251 # 252 name = hw.gpu.enabled 253 type = boolean 254 default = no 255 abstract = GPU emulation 256 description = Enable/Disable emulated OpenGLES GPU 257 258 name = hw.gpu.mode 259 type = string 260 default = auto 261 enum = auto, host, mesa 262 abstract = GPU emulation mode 263 description = This value determines how GPU emulation is implemented. 264 265 name = hw.gpu.blacklisted 266 type = string 267 default = no 268 enum = no, yes 269 abstract = GPU on-blacklist mode 270 description = This value determines if the GPU is considered blacklisted. Testing purposes only. 271 272 # Configures the initial orientation: portrait or landscape 273 # 274 name = hw.initialOrientation 275 type = string 276 enum = portrait, landscape 277 default = portrait 278 abstract = Initial screen orientation 279 description = Setup initial screen orientation, can be rotated later on. 280 281 # Configures camera facing back 282 # 283 name = hw.camera.back 284 type = string 285 enum = emulated, none, webcam0, ... 286 default = emulated 287 abstract = Configures camera facing back 288 description = Must be 'emulated' for a fake camera, 'webcam<N>' for a web camera, or 'none' if back camera is disabled. 289 290 # Configures camera facing front 291 # 292 name = hw.camera.front 293 type = string 294 enum = emulated, none, webcam0, ... 295 default = none 296 abstract = Configures camera facing front 297 description = Must be 'emulated' for a fake camera, 'webcam<N>' for a web camera, or 'none' if front camera is disabled. 298 299 # Maximum VM heap size 300 # Higher values are required for high-dpi devices 301 # Default will depend on RAM size. 302 name = vm.heapSize 303 type = integer 304 default = 0 305 abstract = Max VM application heap size 306 description = The maximum heap size a Dalvik application might allocate before being killed by the system. Value is in megabytes. 307 308 # Light sensor 309 name = hw.sensors.light 310 type = boolean 311 default = yes 312 abstract = Light support 313 description = Whether there is a light sensor in the device 314 315 # Pressure sensor 316 name = hw.sensors.pressure 317 type = boolean 318 default = yes 319 abstract = Pressure support 320 description = Whether there is a pressure sensor in the device 321 322 # Humidity sensor 323 name = hw.sensors.humidity 324 type = boolean 325 default = yes 326 abstract = Humidity support 327 description = Whether there is a relative humidity sensor in the device 328 329 # Proximity sensor 330 name = hw.sensors.proximity 331 type = boolean 332 default = yes 333 abstract = Proximity support 334 description = Whether there is an proximity in the device. 335 336 # Magnetic field sensor 337 name = hw.sensors.magnetic_field 338 type = boolean 339 default = yes 340 abstract = Magnetic field support 341 description = Provides magnetic field sensor values. 342 343 # Uncalibrated magnetometer (used for VR) 344 name = hw.sensors.magnetic_field_uncalibrated 345 type = boolean 346 default = yes 347 abstract = Uncalibrated magnetic field suport 348 description = Provides uncalibrated magnetic field sensor values. 349 350 # Uncalibrated gyroscope 351 name = hw.sensors.gyroscope_uncalibrated 352 type = boolean 353 default = yes 354 abstract = Uncalibrated gyroscope support 355 description = Provides uncalibrated gyroscope sensor values. 356 357 # Orientation sensor 358 name = hw.sensors.orientation 359 type = boolean 360 default = yes 361 abstract = Orientation support 362 description = Provides orientation sensor values. 363 364 # Temperature sensor 365 name = hw.sensors.temperature 366 type = boolean 367 default = yes 368 abstract = Temperature support 369 description = Provides temperature sensor values. 370 371 # File system 372 name = hw.useext4 373 type = boolean 374 default = yes 375 abstract = Deprecated option. Ignored. 376 description = Used to specify the Ext4 partition image type. This is now autodetected. 377 378 # Chrome OS devices 379 name = hw.arc 380 type = boolean 381 default = no 382 abstract = Chrome OS device (App Runtime for Chrome) 383 description = The emulated device is a Chrome OS machine. 384 385 # Autologin for Chrome OS devices 386 name = hw.arc.autologin 387 type = boolean 388 default = no 389 abstract = Auto login for Chrome OS devices 390 description = Used to enable auto login into Chrome OS devices 391 392 # Kernel image. 393 # 394 # kernel.path specified the path to the kernel image 395 # kernel.parameters specifies the string of kernel boot parameters. 396 # 397 name = kernel.path 398 type = string 399 default = 400 abstract = Path to the kernel image 401 description = Path to the kernel image. 402 403 name = kernel.parameters 404 type = string 405 default = 406 abstract = kernel boot parameters string. 407 408 name = kernel.newDeviceNaming 409 type = string 410 enum = autodetect, yes, no 411 default = autodetect 412 abstract = Does the kernel require a new device naming scheme? 413 description = Used to specify whether the kernel requires a new device naming scheme. Typically for Linux 3.10 and above. 414 415 name = kernel.supportsYaffs2 416 type = string 417 enum = autodetect, yes, no 418 default = autodetect 419 abstract = Does the kernel supports YAFFS2 partitions? 420 description = Used to specify whether the kernel supports YAFFS2 partition images. Typically before 3.10 only. 421 422 # Path to the ramdisk image. 423 name = disk.ramdisk.path 424 type = string 425 default = 426 abstract = Path to the ramdisk image 427 description = Path to the ramdisk image. 428 429 # System partition image(s). 430 # 431 # disk.systemPartition.path points to the read/write system partition image. 432 # if empty, a temporary file will be created, initialized with the content 433 # of .initPath 434 # 435 # disk.systemPartition.initPath is only used when .path is empty. It must 436 # then point to a read-only initialization system image file. 437 # 438 # disk.systemPartition.size is the ideal size of the system partition. The 439 # size is ignored if the actual system partition image is larger. Otherwise, 440 # it indicates the maximum size the disk image file can grow to. 441 # 442 name = disk.systemPartition.path 443 type = string 444 default = 445 abstract = Path to runtime system partition image 446 447 name = disk.systemPartition.initPath 448 type = string 449 default = 450 abstract = Initial system partition image 451 452 name = disk.systemPartition.size 453 type = diskSize 454 default = 0 455 abstract = Ideal size of system partition 456 457 # Vendor partition image(s). 458 459 name = disk.vendorPartition.path 460 type = string 461 default = 462 abstract = Path to runtime vendor partition image 463 464 name = disk.vendorPartition.initPath 465 type = string 466 default = 467 abstract = Initial vendor partition image 468 469 name = disk.vendorPartition.size 470 type = diskSize 471 default = 0 472 abstract = Ideal size of vendor partition 473 474 # Path to the data partition. 475 name = disk.dataPartition.path 476 type = string 477 default = <temp> 478 abstract = Path to data partition file 479 description = Path to data partition file. Cannot be empty. Special value <temp> means using a temporary file. If disk.dataPartition.initPath is not empty, its content will be copied to the disk.dataPartition.path file at boot-time. 480 481 # Initial path to the data partition. 482 name = disk.dataPartition.initPath 483 type = string 484 default = 485 abstract = Initial data partition 486 description = If not empty, its content will be copied to the disk.dataPartition.path file at boot-time. 487 488 # Data partition size. 489 name = disk.dataPartition.size 490 type = diskSize 491 default = 0 492 abstract = Ideal size of data partition 493 494 # Path to the data partition. 495 name = disk.encryptionKeyPartition.path 496 type = string 497 default = 498 abstract = Path to encryption key partition file 499 description = Path to encryption key partition file. Should be at least 16K bytes empty disk without any filesystem on it. 500 501 # Path to the snapshots storage file. 502 name = disk.snapStorage.path 503 type = string 504 default = 505 abstract = Path to snapshot storage 506 description = Path to a 'snapshot storage' file, where all snapshots are stored. 507 508 # Is the AVD compatible with Google Play? 509 name = PlayStore.enabled 510 type = boolean 511 default = no 512 abstract = PlayStore 513 description = Does the device supports Google Play? 514 515 # Android AVD name 516 # This is set automatically before launching a core. 517 # 518 name = avd.name 519 type = string 520 default = <build> 521 abstract = Name of the AVD being run 522 523 # Force cold boot 524 # Don't use snapshots for quick booting but boot from scratch instead 525 # 526 name = fastboot.forceColdBoot 527 type = boolean 528 default = no 529 abstract = Always use cold boot 530 description = If set, AVD will always use the full cold boot instead of snapshot-based quick boot process 531