Google provides an official Android emulator as part of the Android SDK. Basic usage:
- Unzip Android SDK tools
tools/android update sdk --no-ui
tools/android list targetsshould give you a list of IDs
tools/android create avd --name MyAndroid --target android-24
tools/emulator -avd MyAndroid
- Drag & Drop APK or run
platform-tools/adb -e install -r FILE.apk
Ranked in these QuestionsQuestion Ranking
Pro Libre/Open source
Pro Works on Windows/Mac/Linux
Pro Flexible interface
Pro Accelerometer support
Pro Various power characteristics can be emulated
Via the power command, AC charging state as well as battery state, presence, health and capacity can be changed.
Pro LCD density can be abstracted
Pro GPS emulation support
Longitute, latitude and altitude information can be supplied to the device once it's running. NMEA 1083 formatting is optional.
Pro Can simulate complex network environments
Each running instance of the emulator has a separate virtual router allowing complex simulations and setups. Network speed and delay can be simulated either by using presets for various network formats or manually entering desired values. It's even possible to interconnect one AVD to another AVD.
Pro The virtual device is capable of recording and playing back audio
Pro SD card emulation support
A disk image can be loaded into the emulator on startup to act as an SD card. This can be done via AVD Manager or mksdcard utility. While the SD card cannot be removed from a running emulator, files can still be moved, copied to and from, and removed from the card. The SD card can be of any size up to 128GB.
Pro Allows sending an SMS to the virtual device
You can send an SMS using the command
sms send <senderPhoneNumber> <textmessage>
Pro GSM emulated modem allows telephony emulation
Telephony emulation allows simulating incoming calls as well as establishing and terminating data connections. Calls can be accepted, but there's no support for call audio.
Pro Camera support
Con Setting up the whole environment is a hassle
Con Bad OS X support
Con No Bluetooth support
Con Clunky UI around things like GPS and such
Con Can't place actual phone calls
While simulated phone calls can be placed and received, there's no call audio support.