Creating an Android Emulator
An Android emulator is an Android Virtual Device (AVD) that represents a specific Android device. You can use an Android emulator as a target platform to run and test your Android applications on your PC.
- Caution: Android emulators are extremely slow and do not support the same feature set as real devices.
We do not recommend that you attempt to use an Android emulator:- If you have an Android device, use your Android device instead.
- You can also use Mobile Preview to do initial debugging of an Android app.
Minimum Requirements for an Android Emulator
To create an Android emulator (made available by Google as part of the Android SDK), we recommend using at least the following:
- Intel Core i5 CPU
- 4GB of RAM
- GPU emulation must be listed in the hardware list of the emulator image, as explained in Running Your Android Application on an Android Emulator.
We do not recommend using an Android emulator on a virtual machine (VM), because GPU support for the emulator is generally not available on VMs. However, if you are running Delphi on a VM on a Mac OS X computer, you can consider using a remote emulator on the Mac, given that the emulator does not work on VMs. For more information, see http://delphi.org/2013/09/debugging-against-a-remote-android-emulator/.
RAD Studio supports the emulator for Android versions 4.x.
We do not support emulators for the 2.x version (Gingerbread) because emulators for Android versions 2.x target an ARMv6 CPU, which Delphi does not support.
Android Emulators Require a Separate GPU
Android emulators are heavily hardware-dependent, and this includes the hardware being emulated as well as the hardware on which the emulator runs.
For this reason, we recommend that you verify the presence of a suitable graphics card on your development system.
- Open Control Panel\Appearance and Personalization\Display\Screen Resolution.
- Click Advanced Settings.
- Take a look at the displayed properties of your graphics card.
- If you do not have a suitable GPU, it is probably not worth your time to create and attempt to run an Android emulator. Find another development system that does have a suitable GPU.
- We do not recommend Intel GPUs.
- If you receive error messages about OpenGL ES when you try to run your Android emulator, this means that your GPU is probably not suitable.
Creating an Android Emulator Is Optional
If you decide to create your own Android emulator, consider creating an emulator for each Android device you want to support. Keep in mind that Android emulators often run so slow that some people consider them unusable.
RAD Studio supports the following targets:
- Android emulators that are version 4.0 or newer
- Android devices that are ARM version 7 or newer
Android emulators cannot be run on a Virtual Machine (VM). Although an emulator might run on a VM, the emulator will not actually run an application.
- Note: It is a well-known performance issue that Android emulators are extremely slow.
Installing an Android System Image (Required)
Before you create an Android emulator, you need to install an Android system image that your emulators can use.
- Note: If you installed the Android SDK and NDK during RAD Studio installation, a valid Android system image (such as Android 4.2.2 API 17) should already be shown as Installed in the Android SDK Manager. In this case, you do not need to install another Android system image.
Follow these steps:
- Start the Android Virtual Device Manager (select Start > All Programs > Embarcadero RAD Studio XE6 > Android SDKs > Android AVD Manager).
- In the packages tree, locate and check the ARM EABI v7a System Image node within the first Android node in the list.
- For example: Android 4.2.2 (API 17) or Android 4.3 (API 18)
- Click Install 1 package. (Clear any checkboxes that were auto-selected.)
- In the Choose Packages to Install page, click Accept License, and then click Install to install the system image.
Creating an Android Emulator Using the Android Virtual Device Manager
To create an Android emulator on your system, follow these steps:
- Start the Android SDK Manager (select Start > All Programs > Embarcadero RAD Studio XE6 > Android SDKs > Android AVD Manager).
-
- In the Android Virtual Device Manager, click the New button to create a new virtual device.
- In the Create new Android Virtual Device (AVD) dialog box, select an Android device to emulate, and enter the details describing the Android device you want to emulate. In order to run a FireMonkey mobile application, your Android emulator must meet the following requirements:
- In Target, select an Android SDK with an API level that is 17 or higher. The drop-down list contains your installed versions of the Android SDK.
- Under Emulation Options, check Use Host GPU.
- In Device, select the Android device to emulate.
- Tip: Emulating an older Android device like the Nexus S might be faster than emulating a newer, larger device like the Nexus 10.
- Click OK twice to create your new Android emulator.
- You can now view your emulator in the Android Virtual Device Manager.
RAD Studio lists your Android emulators in the Project Manager, within the Target node of the Android target platform node. See Using the Target Node.
- Note: As reference, here are the default installed locations of the Android development tools as installed by the RAD Studio installer:
- If you need to start the Android SDK Manager directly, here is its location:
-
C:\Users\Public\Documents\Embarcadero\Studio\14.0\PlatformSDKs\adt-bundle-windows-x86-20131030
- If SDK Manager.exe does not start, use Android.bat, which is located here:
-
C:\Users\Public\Documents\Embarcadero\Studio\14.0\PlatformSDKs\adt-bundle-windows-x86-20131030\sdk
Creating an Android Emulator Using the Command Line
You can create an Android emulator in the command window by entering a command such as this:
echo no | android -s create avd -n my_android -t 1
For the skin, you might want to add this option:
--skin WXGA800-7in
For more information, see the Android documentation.
Starting an Android Emulator
When the emulator is the current target platform, you do not have to start the emulator before running your Android app on the emulator. However, we recommend that you start your Android emulator separately, perhaps before you start RAD Studio. Emulators are notoriously slow to start and to run, so starting the emulator beforehand means that your app can get to the emulator more quickly.
The recommended way to start an Android emulator is by using the Android Virtual Device Manager, which can be started from the Android SDK Manager.
To start an Android emulator such as the default emulator installed in RAD Studio:
- Start the Android Virtual Device Manager (select Start > All Programs > Embarcadero RAD Studio XE6 > Android SDKs > Android AVD Manager).
- Select the emulator and click Start.
- Then click Launch on the Launch Options dialog box.
- Your emulator should now start (this might take five or ten minutes):
- In the Project Manager, your emulator should appear in the Target node of the Android target platform, with its assigned port (such as (5554)):
- Tip: If the Project Manager does not show your running Android emulator as running, with the same icon as in the screenshot above, see Using the Target Node.
Your next step is to run an Android app on your emulator. In the Project Manager, ensure that the emulator's name is in boldface and the port number is indicated in parentheses (such as (5554)), indicating that the emulator is running and is the current selected target platform.
For more information, see http://developer.android.com/tools/devices/managing-avds.html.