April 22, 2016

Android Emulator + HAXM

Have you tried creating an Android emulator and you've been prompted that it cannot launch because it requires hardware acceleration? When using an x86 system image for an Android Virtual Device (AVD), you should install HAXM (Hardware Accelerated Execution Manager). HAXM is a hardware-assisted virtualization engine (hypervisor) that uses Intel Virtualization Technology to speed up Android app emulation on a host machine.

HAXM can be installed through the Intel site or from the Android SDK Manager. Go to Extras and select Intel x86 Emulator Accelerator (HAXM installer) and download the package. Go to your SDK directory > extras > intel > Hardware_Accelerated_Execution_Manager and run the installer. Follow the on-screen instructions. You might need to enable virtualization in your BIOS setup for HAXM to work.

When running an x86 emulator, you should be able to see something like HAX is working and emulator runs in fast virt mode which means you have successfully installed HAXM. If you encountered something like Intel virtualization technology (VT-x) is not turned on, you should restart your computer and go to the BIOS setup. From there, you should enable Intel virtualization technology. If you still encounter problems, you can try any of the following:
  • Uncheck Hyper-V in Control Panel > Programs > Turn windows features on or off > Programs and Features then restart your computer
  • If you have Avast, uncheck Enable hardware-assisted virtualization and Enable avast self-defense module in Settings > Troubleshooting.
  • Go to My Computer. Right-click it then go to Avanced System Settings > Advanced > Performance > Settings > Data Execution Prevention. Enable DEP for all programs and services