ArcGIS Runtime SDK for Android v1.1 supports Android Emulator

The Android SDK team recently released an upgraded faster emulator that has support for native OpenGL ES 2.0!  This is a key tool for ArcGIS Android developers in building and testing their apps.  We have been testing on all platforms and today can announce support for ArcGIS Runtime SDK for Android apps working on the emulator on all platforms, Mac, Linux, and Windows.  Here are the steps to configure your development environment:

1. On all platforms ensure that you have ‘ARM EABI v7a System Image installed for Android 4.0.3 (API 15).

Arm System image

2. On Win/Mac install the Intel Hardware Accelerated Execution Manager under Extras.

Intel Hardware Accelration

3. On Windows, configure the Intel Hardware Accelerated Execution Manager by executing the <sdk>/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.exe program and follow the installation dialogs.  Once complete, open a command prompt and run the following command:

> sc query intelhaxm

A status message should return that it is running.  If not stop here and troubleshoot using resources at the end of the post.  On all platforms you need to create an Android 4.0.3 AVD and enable the GPU emulation hardware property.

1. Create a new Android Virtual Device targeting Android 4.0.3 – API Level 15.

2. Under Hardware, click New

3. Under Property select GPU emulation

GPU emulation

4. Click OK.

5. Change the property Value to ‘Yes’

gpu value

6. Click Create AVD.

On Windows you need to enable gpu emulation on the Eclipse Run Configuration

1. In Eclipse, click your Android project folder and then select Run > Run Configurations…

2. In the left panel of the Run Configurations dialog, select your Android project run configuration or create a new configuration.

3. Click the Target tab.

4. Select the AVD you created in the previous procedure.

5. In the Additional Emulator Command Line Options field, enter:

-gpu on

6. Run your Android project using this run configuration.

Map in Emulator

We hope this improvement makes the emulator a more useful tool in your testing and development of ArcGIS Runtime SDK for Android applications.  More information on hardware acceleration can be found here.

This entry was posted in Developer, Mobile and tagged , , , , . Bookmark the permalink.

Leave a Reply

10 Comments

  1. andygup says:

    Tip for better productivity – don’t close the emulator between debug sessions. You can leave it running and terminate the debug session directly from Eclipse.

  2. ericb says:

    Awesome. Thanks for the blog!

  3. mcederholm says:

    Intel HAX only works in conjunction with the Intel Atom x86 system image; otherwise, it’s ignored. Whichever emulator you use, it will only work if your graphics adapter uses a chipset that’s compatible with OpenGL 2. Check your compatibility and install the latest display driver before pulling your hair out.

    • aryasharad says:

      I tried both intel x86 and ARM emulator with android 4.2 (API level 17). I tried to find out the compatibility of the graphics adapter with OpenGL 2 through GL Extension Viewer 4.1.0. It represents OpenGL version 3.3. It means graphics adapter is compatible with opengl. Now, why the map is not loading on emulator. Please help me….I pulled my hair out. Thanks.

  4. sboy315 says:

    Hi,I’m new to ArcGIS SDK for Android,and I want to known if the ArcGISAndroidSDK_v10.1.1 version support Intel Atom x86 system image emulator? E-mail me,THX.

  5. pradi.smg says:

    I did every thing given here, but i’ m unable to display map… While creating AVD i didn’t got Hardware instead I’m getting emulation options in that i enabled Use Host GPU.. What should i do please help me…
    I’ m Using…
    ADT 22
    ArcGIS 10.1.1-u1

  6. ssatish2922 says:

    I getting this error map not loading

    FATAL EXCEPTION: GLThread 108
    java.lang.IllegalArgumentException: No configs match configSpec
    at com.esri.android.map.MapSurface$a.chooseConfig(Unknown Source)
    at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1024)
    at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1401)
    at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)

  7. heneryh says:

    My Mac AVD configuration does not show the area to configure hardware options. There was a check box to use host GPU though.

    I am running the eclipse version that came bundled from Android with the ADT.