Now you can run ARM binaries in X86 android emulators
- One big problem with android emulators in android studio was that, many of the release binaries from play store or from developers were of armeabi-v7a or arm64-v8a format.
- So the best performant emulators are X86 based but if you want to run those ARM builds, the latest AVD which was produced was Android 7.1.1 Nougat API level 25.
- Enter ::: https://android-developers.googleblog.com/2020/03/run-arm-apps-on-android-emulator.html
The new Android 11 system images are capable of translating ARM instructions to x86 without impacting the entire system. This allows the execution of ARM binaries for testing without the performance overhead of full ARM emulation
What it means ?
- You can just download an Android R Google Play AVD and run most of the apps directly on the emulator. There could be some apps that may not run or are incompatible.
- Developers wont have to create multiple build outputs in future, at least in the development phase of their applications, you can quickly debug them on X86 based emulators.
- Also x86 based emulators are more performant and can take advantage of CPU and GPU, so faster debugging.
- More apps will have x86 support in the future, that means chrome OS and android x86 based machines getting more app support.
FYI - As of today only Android 9 and 11 based X-86 and x-86_64 emulators can run ARM builds, not 10 : https://developer.android.com/studio/releases/emulator#30-0-0
Just started an Android 9 based X86 Google Play AVD, signed into Playstore and done. Normally this app would not have been present, as it is an armeabi-v7a variant.