👉 Overview
👀 What ?
Android Virtual Device (AVD) is a configuration that defines the characteristics of an Android phone, tablet, Wear OS, Android TV, or Automotive OS device that you want to simulate in the Android Emulator. It works with the emulator to provide a virtual device-specific environment in which to install and run Android apps.
🧐 Why ?
The AVD is an essential tool for Android developers as it allows them to test their applications on different Android devices and versions without needing to have each physical device. The AVD simulates the expected behavior of the Android device, allowing the developers to debug their applications and ensure that it runs correctly. It is also useful for end-users who wish to use Android applications on their PC.
⛏️ How ?
To create an Android Virtual Device (AVD) follow these steps: \n1. Open the AVD Manager by clicking AVD Manager in the toolbar.\n2. In the AVD Manager, click Create Virtual Device.\n3. In the Select Hardware screen, select a phone device, such as Pixel 3, and then click Next.\n4. In the System Image screen, select a recent Android version, preferably the highest API level. If you don't have that version installed, a Download link is shown, so click Download to install it.\n5. On the Android Virtual Device (AVD) screen, leave all the settings alone and click Finish.
⏳ When ?
The use of Android Virtual Devices began with the launch of the Android SDK by Google. It has been a part of Android Studio, Google's official integrated development environment for the Android operating system, since its inception.
⚙️ Technical Explanations
The Android Virtual Device represents a specific Android device. Google’s Android SDK supplies tools for setting up and managing these virtual devices. For each virtual device, you define a hardware profile, system image, storage area, skin, and other options. The Android Emulator uses the Android Virtual Device configuration to determine the functionality and behavior of the simulated device. AVDs let you define certain hardware aspects of your emulated phone and allow you to create many configurations to test many Android platforms and hardware permutations. Once your application is running on the emulator, it can use the services of the Android platform to invoke other applications, access the network, play audio and video, store and retrieve data, notify the user, and render graphical transitions and themes. Your application can also use any APIs in the Android platform or in any of its included libraries.