Android Emulator

By: Ashley  

The difference between Emulator and Simulator

A simulator represents the real world object. It does the act of imitating the process by giving false appearance.  It is able to achieve this by using mathematical models and computer programs such as FlightSim, NS2.

An emulator performs exactly the same way as real. Example emulators are Xen, Qemu, VirtualBox, Wine.

What is QEMU?

QEMU is an Open source process emulator. It does CPU emulation of IA-32, x86-64, PPC, ARM, MIPS and SPARC. It emulates the full system. Able to run unmodified guest OS. Also able to run programs which are compiled for different architecture. Supported devices are HDD(COW), CDD, NIC, Sound, USB, SMB server, port redirection etc.

Android Emulator is based on QEMU emulator designed for virtual ARMv5 CPU with MMU. It has a 16bit LCD, a keyboard, Sound IO, flash memory partition (file image) and a GSM modem with simulated SIM. It runs full stack (kernel to Apps). It does dynamic binary translation from ARMv5 to x86.

Android Emulator is part of Android SDK. So you don't have to download it seperately. It can be used for application development to do prototypes, develop and test without the physical device. It supports AVD (Android Virtual Device) to emulate different hardware configurations, different software features and different skins. Regular keyboard and mouse can be used.

While running an android application on an Android emulator, application can use services, invoke other applications, access the network, play audio and video files, store and retrieve data, notify user, render graphical transitions and set different themes.

Android emulator also has debugging support for the following:

  • Log Kernel Output
  • Log Application output
  • Simulate application interrupts (SMS/Call arrival)
  • Simulate latency effects
  • simulate data loss

ADB is the Android Debugging Bridge which handles emulator as a real device and can handle multiple devices.

Starting android emulator

  • $android  (Start the AVD Manager)
  • $emulator -avd <avd-name>
  • You can also start it from eclipse by running your application.

Archived Comments

Most Viewed Articles (in Android )

Latest Articles (in Android)

Comment on this tutorial