More details on Android emulator additions
We reported last month on native x86 support arriving for the Android emulator – see Google speeds Android emulator with native x86 support – but Google has released (last week) more information about the updated development tool…
Xavier Ducrohet and Reto Meier of the Android engineering team write (on the Android Developers blog):
The Android emulator is a key tool for Android developers in building and testing their apps. As the power and diversity of Android devices has grown quickly, it’s been hard for the emulator keep pace.
Today we’re thrilled to announce several significant improvements to the emulator, including a dramatic performance upgrade and support for a broader range of hardware features, notably sensors and multi-finger input.
So, as well as built-in GPU support, there is more emulation of hardware features – to use a tethered Android device to supply inputs for sensors and multi-touch input – CPU operation emulation,
About built-in GPU support, they write:
“The system image we’re shipping today has built-in GPU support (Android 4.0.3 r2). With Android’s growing reliance on using the GPU to improve performance, the difference is significant. In the video below, the emulator is still interpreting ARM instructions; the performance boost is the effect of putting the GPU to work.”
“This video shows interactivity of the Android launcher in the emulator in normal and hardware accelerated mode,” writes androiddevtools.
On x86 support they write:
Of course, the system being emulated typically has an ARM CPU; historically, we’d been emulating those instructions in software, and that worked OK until the advent of tablet support with additional animations and complexity in Android 3.0.
The missing pieces were the completion of Android x86 support, and the GPU support in last week’s release of SDK Tools r17. This works by funneling the OpenGL ES 2.0 instructions from the emulator to the host OS, converted to standard OpenGL 2.0, and running natively on the host GPU.