| page.title=Managing AVDs with AVD Manager |
| parent.title=Managing Virtual Devices |
| parent.link=index.html |
| @jd:body |
| |
| <div id="qv-wrapper"> |
| <div id="qv"> |
| <h2>In this document</h2> |
| |
| <ol> |
| <li><a href="#createavd">Creating an AVD</a> |
| <ol> |
| <li><a href="#hardwareopts">Hardware options</a></li> |
| </ol> |
| </li> |
| </ol> |
| </div> |
| </div> |
| |
| <p>The AVD Manager is an easy to use user interface to manage your AVD (Android Virtual Device) |
| configurations. An AVD is a device configuration for the Android emulator that allows you to |
| model different configurations of Android-powered devices. When you start the AVD Manager in Android |
| Studio or navigate to your SDK's {@code tools/} directory and execute |
| <code>android avd</code>, you will see the AVD Manager main screen with your current virtual |
| devices. You can right-click an existing AVD to perform actions on the AVD, such as delete, |
| duplicate, wipe data, show on disk, and display details. </p> |
| |
| <img src="{@docRoot}images/studio-avdmgr-firstscreen.png" alt=""> |
| <p class="img-caption"><strong>Figure 1.</strong> AVD Manager.</p> |
| |
| |
| <h2 id="createavd">Creating an AVD</h2> |
| |
| <p>You can create as many AVDs as you would like to test on. It is recommended that you test your |
| applications on all API levels higher than the target API level for your application.</p> |
| |
| <p>To create an AVD:</p> |
| |
| <ol> |
| <li>Start the AVD Manager: |
| |
| <ul> |
| <li>In Android Studio: select <strong>Tools > Android > AVD Manager</strong>, or click |
| the AVD Manager icon <img src="{@docRoot}images/ui/studio-avdmgr-icon.png"style="vertical-align:bottom;margin:0;height:19px"> in the Android Studio toolbar.</li> |
| |
| |
| <li>In other IDEs: Navigate to your SDK's <code>tools/</code> directory and execute the |
| <code>android</code> tool with no arguments.</li> |
| </ul> |
| </li> |
| |
| <li><p>Click <strong>Create Virtual Device</strong> to create an AVD. The |
| <strong>Select Hardware</strong> dialog appears.</p> |
| |
| <img src="{@docRoot}images/studio-avdmgr-selecthdwr.png"> |
| <p class="img-caption"><strong>Figure 2.</strong> Select Hardware window.</p> |
| </li> |
| |
| <li><p>Select the device category and form factor. Click <strong>Edit Device</strong> to modify |
| an existing AVD, or click <strong>New Hardware Profile</strong> to create a new hardware profile. |
| Click <strong>Next</strong> to continue. </p> |
| <p>The hardware profile includes settings for screen size, camera, memory options,input type, |
| and sensors. For a list of hardware features, see <a href="#hardwareopts">Hardware options</a>.</p> |
| |
| <img src="{@docRoot}images/studio-avdmgr-confighardwareprof.png" alt=""> |
| <p class="img-caption"><strong>Figure 3.</strong> Configure Hardware window.</p> |
| </li> |
| |
| <li>Select the desired system image. Click <strong>Install Latest Version</strong> to download |
| a new system image. Click <strong>Next</strong> to continue. |
| </li> |
| |
| <li>Fill in the details for the AVD. |
| |
| <p>Give it a name, device type, platform target, image size, orientation, and emulator |
| performance. Click <strong>Show Advanced Settings</strong> to assign a custom skin to the |
| hardware profile and other advanced settings for the device type. |
| </p> |
| |
| <p class="note"><strong>Tip:</strong>Store custom skins in an easily accessible directory, |
| such as <em>~/skins</em>. From information about custom skins, see |
| <a href="#skins">Skins</a>. </p> |
| |
| <img src="{@docRoot}images/studio-avdmgr-configavd.png" alt=""> |
| <p class="img-caption"><strong>Figure 4.</strong> Configure AVD window.</p> |
| |
| <p class="note"><strong>Tip:</strong> Be sure to define a target for your AVD that satisfies |
| your application's Build Target (the AVD platform target must have an API Level equal to or |
| greater than the API Level that your application compiles against).</p> |
| </li> |
| |
| <li>Click <strong>Finish</strong>.</li> |
| </ol> |
| |
| <p>Your AVD is now ready and you can either close the AVD Manager, create more AVDs, or |
| manage an emulator with the AVD by clicking an icon in the <strong>Actions</strong> column: |
| </p> |
| |
| <ul> |
| <li>Start an AVD <img src="{@docRoot}images/tools/studio-avdmgr-action-icon.png" alt=""></li> |
| <li>Edit an AVD <img src="{@docRoot}images/tools/studio-avdmgr-actions-edit-icon.png" alt=""></li> |
| <li>Perform management actions <img src="{@docRoot}images/tools/studio-avdmgr-actions-dropdown-icon.png" alt=""></li> |
| </ul> |
| |
| |
| <h3 id="hardwareopts">Hardware options</h3> |
| <p>If you are creating a new AVD, you can specify the following hardware options for the AVD |
| to emulate:</p> |
| |
| <table> |
| <tr> |
| <th>Characteristic</th> |
| |
| <th>Description</th> |
| |
| <th>Property</th> |
| </tr> |
| |
| <tr> |
| <td>Device ram size</td> |
| |
| <td>The amount of physical RAM on the device, in megabytes. Default value is "96".</td> |
| |
| <td>hw.ramSize</td> |
| </tr> |
| |
| <tr> |
| <td>Touch-screen support</td> |
| |
| <td>Whether there is a touch screen or not on the device. Default value is "yes".</td> |
| |
| <td>hw.touchScreen</td> |
| </tr> |
| |
| <tr> |
| <td>Trackball support</td> |
| |
| <td>Whether there is a trackball on the device. Default value is "yes".</td> |
| |
| <td>hw.trackBall</td> |
| </tr> |
| |
| <tr> |
| <td>Keyboard support</td> |
| |
| <td>Whether the device has a QWERTY keyboard. Default value is "yes".</td> |
| |
| <td>hw.keyboard</td> |
| </tr> |
| |
| <tr> |
| <td>DPad support</td> |
| |
| <td>Whether the device has DPad keys. Default value is "yes".</td> |
| |
| <td>hw.dPad</td> |
| </tr> |
| |
| <tr> |
| <td>GSM modem support</td> |
| |
| <td>Whether there is a GSM modem in the device. Default value is "yes".</td> |
| |
| <td>hw.gsmModem</td> |
| </tr> |
| |
| <tr> |
| <td>Camera support</td> |
| |
| <td>Whether the device has a camera. Default value is "no".</td> |
| |
| <td>hw.camera</td> |
| </tr> |
| |
| <tr> |
| <td>Maximum horizontal camera pixels</td> |
| |
| <td>Default value is "640".</td> |
| |
| <td>hw.camera.maxHorizontalPixels</td> |
| </tr> |
| |
| <tr> |
| <td>Maximum vertical camera pixels</td> |
| |
| <td>Default value is "480".</td> |
| |
| <td>hw.camera.maxVerticalPixels</td> |
| </tr> |
| |
| <tr> |
| <td>GPS support</td> |
| |
| <td>Whether there is a GPS in the device. Default value is "yes".</td> |
| |
| <td>hw.gps</td> |
| </tr> |
| |
| <tr> |
| <td>Battery support</td> |
| |
| <td>Whether the device can run on a battery. Default value is "yes".</td> |
| |
| <td>hw.battery</td> |
| </tr> |
| |
| <tr> |
| <td>Accelerometer</td> |
| |
| <td>Whether there is an accelerometer in the device. Default value is "yes".</td> |
| |
| <td>hw.accelerometer</td> |
| </tr> |
| |
| <tr> |
| <td>Audio recording support</td> |
| |
| <td>Whether the device can record audio. Default value is "yes".</td> |
| |
| <td>hw.audioInput</td> |
| </tr> |
| |
| <tr> |
| <td>Audio playback support</td> |
| |
| <td>Whether the device can play audio. Default value is "yes".</td> |
| |
| <td>hw.audioOutput</td> |
| </tr> |
| |
| <tr> |
| <td>SD Card support</td> |
| |
| <td>Whether the device supports insertion/removal of virtual SD Cards. Default value is |
| "yes".</td> |
| |
| <td>hw.sdCard</td> |
| </tr> |
| |
| <tr> |
| <td>Cache partition support</td> |
| |
| <td>Whether we use a /cache partition on the device. Default value is "yes".</td> |
| |
| <td>disk.cachePartition</td> |
| </tr> |
| |
| <tr> |
| <td>Cache partition size</td> |
| |
| <td>Default value is "66MB".</td> |
| |
| <td>disk.cachePartition.size</td> |
| </tr> |
| |
| <tr> |
| <td>Abstracted LCD density</td> |
| |
| <td>Sets the generalized density characteristic used by the AVD's screen. Default value is |
| "160".</td> |
| |
| <td>hw.lcd.density</td> |
| </tr> |
| </table> |
| |
| |
| <h3 id="skins">Using Custom Emulator Skins</h3> |
| <p>A custom Android emulator skin is a collection of files that enable you to customize the visual |
| and control elements of an emulator display. Custom emulator skins enable you to define variations |
| of emulation properties, such as the use of a trackball or touchscreen, to match your device |
| customizations. Each custom emulator skin contains:</p> |
| <ul> |
| <li>A <code>hardware.ini file</code> for initialization settings</li> |
| <li>Layout files for supported orientations (landscape, portrait) and physical configuration</li> |
| <li>Image files for display elements, such as background, keys and buttons</li> |
| </ul> |
| <p>To create and use a custom skin:</p> |
| <ol> |
| <li>Create a skin folder in an easily accessible location, such as <em>~/skins</em>. </li> |
| <li>Define the skin orientation and configuration settings in a file called <code>layout</code> |
| in the skin folder. |
| <pre> |
| parts { |
| |
| device { |
| display { |
| width 1080 |
| height 1920 |
| x 0 |
| y 0 |
| } |
| } |
| |
| portrait { |
| background { |
| image background_port.png |
| } |
| |
| buttons { |
| power { |
| image button_vertical.png |
| x 1229 |
| y 616 |
| } |
| } |
| } |
| ... |
| } |
| |
| </pre></li> |
| |
| <li>Creates a <code>hardware.ini</code> file for the skin-specific properties that determine |
| emulator specifications and behavior. For a complete list of emulator properties, see |
| <a href="{@docRoot}tools/devices/managing-avds-cmdline.html">Managing AVDs from the Command |
| Line</a>. For example:</li> |
| <pre> |
| # skin-specific hardware values |
| hw.lcd.density=213 |
| vm.heapSize=48 |
| hw.ramSize=1024 |
| hw.keyboard.lid=no |
| hw.mainKeys=no |
| </pre> |
| <li>Add the bitmap files of the device images to the skin folder. </li> |
| <li>Archive the files in the skin folder. </li> |
| <li>Create a new AVD and select the archive file as a custom skin. </li> |
| </ol> |
| |
| <p>You can now run the AVD with a custom skin for testing and viewing your app. </p> |
| |