{"id":1304,"date":"2013-08-13T16:00:42","date_gmt":"2013-08-13T23:00:42","guid":{"rendered":"http:\/\/mattfife.com\/?p=1304"},"modified":"2013-08-13T16:00:42","modified_gmt":"2013-08-13T23:00:42","slug":"getting-intels-haxm-hardware-accelerated-android-avd-running-on-your-system","status":"publish","type":"post","link":"https:\/\/mattfife.com\/?p=1304","title":{"rendered":"Getting Intel&#8217;s HAXM hardware accelerated Android AVD running on your system"},"content":{"rendered":"<p>One of the (frankly) terrible aspects of doing Android development is the horrendously slow Android emulator. This is especially true if you do OpenGL ES development.\u00a0 Fear not!\u00a0 Intel has come to the rescue.\u00a0 They&#8217;ve released HAXM (Hardware Accelerated Execution Manager) that <em>dramatically<\/em> speeds up your Android development and emulation.\u00a0 Best part is that it&#8217;s free. The amount of time you&#8217;ll save on app start up alone makes it worth every moment you&#8217;ll spend setting it up.<\/p>\n<p>Setup:<\/p>\n<ol>\n<li>Install Eclipse as your normally would<\/li>\n<li>Open the Eclipse SDK Manager.<\/li>\n<li>Install one of the latest Android API packages with two important points:\n<ol>\n<li>The API level MUST INCLUDE AN INTEL X86 ATOM SYSTEM IMAGE (API 17 at the time of this writing).<\/li>\n<li>Also select the HAXM support.\u00a0 Found in: &#8216;Extras&#8217;-&gt;&#8217;Intel x86 Emulator Accelerator (HAXM)&#8217;<br \/>\n<a href=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"Untitled\" src=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled.png?resize=300%2C211&#038;ssl=1\" width=\"300\" height=\"211\" \/><\/a><\/li>\n<\/ol>\n<\/li>\n<li>After those packages are all installed, close the manager and open Eclipse.<\/li>\n<li>Open a workspace and get an app ready to test (use one of the samples if necessary)<\/li>\n<li>Go to: Run-&gt;Run Configurations<\/li>\n<li>Right-click &#8216;Android Application&#8217; on the list on the left and select &#8216;New&#8217;<\/li>\n<li>I named mine Standard_Run_Configuration &#8211; but you can name yours whatever.<br \/>\n<a href=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled2.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"Untitled2\" src=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled2.png?resize=300%2C146&#038;ssl=1\" width=\"300\" height=\"146\" \/><\/a><\/li>\n<li>Put the project name in the Project box (mine was AndroidCubeStart)<\/li>\n<li>Select the &#8216;Target&#8217; Tab.<\/li>\n<li>Select the &#8216;Automatically pick compatible device&#8230;&#8221; option, then select the &#8216;Manager&#8217; button.<br \/>\n<a href=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled3.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"Untitled3\" src=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled3.png?resize=300%2C159&#038;ssl=1\" width=\"300\" height=\"159\" \/><\/a><\/li>\n<li>At the Manager pane, select &#8216;New&#8230;&#8217;<\/li>\n<li>Fill out the AVD with these notes:\n<ol>\n<li>Target MUST be one of the API target levels that has the Atom system image (see step 3)<\/li>\n<li>CPU\/ABI must be Intel Atom (x86)<\/li>\n<li>In the &#8216;Emulation Options&#8217; list, select &#8216;Use Host GPU&#8217;<\/li>\n<li>Select OK to save<br \/>\n<a href=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled5.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"Untitled5\" src=\"https:\/\/i0.wp.com\/mattfife.com\/wp-content\/themes\/mattTheme\/headerimgs\/2013\/08\/Untitled5.png?resize=183%2C300&#038;ssl=1\" width=\"183\" height=\"300\" \/><\/a><\/li>\n<\/ol>\n<\/li>\n<li>You should see your new AVD listed when you&#8217;re back at the Android Virtual Device Manager page.\u00a0 To test it, select it from the list and then press the &#8216;Start&#8230;&#8217; button.<\/li>\n<li>If all goes well, you should have your hardware accelerated AVD emulator.\u00a0\u00a0 You should notice that the emulator runs orders of magnitude faster than the standard emulator!<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p><strong>Common problems:<\/strong><\/p>\n<p>I had the problem where this message appeared when I tried to run the emulator.<\/p>\n<blockquote>\n<pre><code>emulator: Failed to open the HAX device!\r\nHAX is not working and emulator runs in emulation mode\r\nemulator: Open HAX device failed<\/code><\/pre>\n<\/blockquote>\n<p>To fix this, I tried a number of things that didn&#8217;t work, but manually installing HAXM fixed it:<\/p>\n<ol>\n<li>Close Eclipse and Eclipse SDK manager, but still make sure you&#8217;ve got the Extras-&gt;HAXM installed in the Eclipse SDK Manager (as you did in step 3 above).<\/li>\n<li>Go to the Intel HAXM download page:<br \/>\n<a href=\"http:\/\/software.intel.com\/en-us\/articles\/intel-hardware-accelerated-execution-manager\/\" target=\"_blank\">http:\/\/software.intel.com\/en-us\/articles\/intel-hardware-accelerated-execution-manager\/<\/a><\/li>\n<li>Run the install package to the normal locations.<\/li>\n<li>Restart Eclipse and see if you can run the emulator via going to &#8216;Run&#8217;-&gt;&#8217;Run configurations&#8217;.\u00a0 This time it worked for me.\u00a0 You should see something like this from the message window if your HAXM is running in hardware accelerated mode.<\/li>\n<\/ol>\n<blockquote>\n<pre><code>Starting emulator for AVD 'ARM-HAXM'\r\nemulator: device fd:756\r\nHAX is working and emulator runs in fast virt mode\r\ncreating window 0 0 480 800<\/code><\/pre>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>One of the (frankly) terrible aspects of doing Android development is the horrendously slow Android emulator. This is especially true if you do OpenGL ES development.\u00a0 Fear not!\u00a0 Intel has come to the rescue.\u00a0 They&#8217;ve released HAXM (Hardware Accelerated Execution Manager) that dramatically speeds up your Android development and emulation.\u00a0 Best part is that it&#8217;s free. The amount of time you&#8217;ll save on app start up alone makes it worth every moment you&#8217;ll spend setting it up. Setup: Install Eclipse&#8230;<\/p>\n<p class=\"read-more\"><a class=\"btn btn-default\" href=\"https:\/\/mattfife.com\/?p=1304\"> Read More<span class=\"screen-reader-text\">  Read More<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[6,5],"tags":[],"class_list":["post-1304","post","type-post","status-publish","format-standard","hentry","category-technicalproblemsolutions","category-technical"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4WECr-l2","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/posts\/1304","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mattfife.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1304"}],"version-history":[{"count":2,"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/posts\/1304\/revisions"}],"predecessor-version":[{"id":1311,"href":"https:\/\/mattfife.com\/index.php?rest_route=\/wp\/v2\/posts\/1304\/revisions\/1311"}],"wp:attachment":[{"href":"https:\/\/mattfife.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1304"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mattfife.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1304"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mattfife.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1304"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}