Android Emulator Apple M1

Just tried to run Android Studio (4.1.1) on Macbook Pro M1, it works, but: No emulators at this point Can build and publish on Android Phone (Nexus 4a in my case) IntelliJ has some lags in performance on M1 (because it is not native, and Intel built), but feels pretty usable. Apple M1 MacBooks will soon be able to run Android apps, as well as iOS. It looks like Android apps could be coming to Apple MacBooks and Macs that run on the new M1 chip, with the BlueStacks. Android Studio 3.6 helps you take advantage of several updates included in Android Emulator 29.2.7 and higher, as described below. Improved Location Support. Android Emulator 29.2.7 and higher provides additional support for emulating GPS coordinates and route information.

This is the second post that I dedicate to talk about configurations using the new M1 Apple processor. As I said in the previous post, these configurations are workarounds until stable versions are released, however, for me, they have been useful and I guess that someone in the same situation as me can benefit from that.

Using Android studio in the new Macbook Air

When you install Android Studio you will get the following warning:

Unable to install Intel® HAXM

Your CPU does not support VT-x.

Unfortunately, your computer does not support hardware-accelerated virtualization.

Here are some of your options:

1 - Use a physical device for testing

2 - Develop on a Windows/OSX computer with an Intel processor that supports VT-x and NX

3 - Develop on a Linux computer that supports VT-x or SVM

4 - Use an Android Virtual Device based on an ARM system image

(This is 10x slower than hardware-accelerated virtualization)

Creating Android virtual device

Android virtual device Pixel_3a_API_30_x86 was successfully created

And also in the Android virtual device (AVD) screen you will read the following warning:

Mac m1 android studio

If you want to learn more regarding virtualization in processors you can read the following Wikipedia article, the thing is that our M1 processor doesn’t support VT-x, however, we have options to run an Android Virtual Device.

As the previous message was telling us, we have 4 options. The easiest way to proceed is to use a physical device, but what if you haven’t one available at the moment you are developing?

From now on, we will go with the option of using an Android virtual device based on an ARM system image as options 2 and 3 are not possible to execute.

Using the virtual emulator

The only thing that you have to do is to download the last available emulator for Apple silicon processors from Github https://github.com/741g/android-emulator-m1-preview/releases/tag/0.2

Apple

Once you have downloaded you have to right-click to the .dmg file and click open to skip the developer verification.

After installing the virtual emulator, we have to open it from the Applications menu.

Android Emulator Apple M1

After opening it you will see Virtual emulator in Android Studio available to deploy your Android application. Make sure to have Project tools available in Android Studio (View -> Tool Windows -> Project)

After pressing the launch button you will get your Android application running in your ARM virtual emulator :-)

Conclusion

Android

In this post, we have seen that is possible to install Android Studio in Macbook Air M1 and use a virtual device even that your M1 doesn’t support VT-x. You can learn more about this emulator in the following references:

Android Emulator on Apple M1


credit: Alexander Ziskind

New Apple M1

As you know, the Android emulator can’t run on the Apple M1 with the HAXM and VT-x, which means the performance would be affected, and a better option is to use the physical device. So, when you try to install a new android virtual device (the emulator). You will see this screen:

Android Emulator Apple M1 Online

You can only select arm64 images in the Other Images category.

ARM64 Image

So, this is not an issue even we choose to use ARM64 images. The point is that when you launch the emulator, you always see the emulator status is offline. The reason why it’s always offline is that the image under the system-images folder is damaged, and you need to replace it with a workable one.

How to solve?

Try to download one of these two images [2], [3]. After downloading one of those two images, unzip the file and replace the folder arm64-v8a under ~/Library/Android/SDK/system-images/android-S (if you choose to install Android S). Then restart the emulator. You can see the emulator should be back online again.

Android Emulator On Apple M1

Reference