Mac Mini M1 Android Emulator
The emulator runs on the new Mac Mini, Macbook Pro and Macbook Air with Apple's M1 chip. The application does not work on Apple products with Intel SoCs. The emulator can be used to run ARM64-based Android apps on a Mac. The native hardware virtualization of the M1 SoCs is used via Qemu. The S API Level M1 Android Emulator is pretty fast. Just like the one we usually run on Intel device machine with Intel® HAXM. And for me the best news is, Chrome is working!! I tried Charles.
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
We recently posted about how Visual Studio for Mac is supporting Apple Silicon / M1 architecture through the Rosetta translation layer starting in version 8.9, and we’re working towards native support. We’ve been using and testing with M1 Macs, but it’s always great to hear how.NET and Visual Studio for Mac are working for our customers in the real world. Is the 8GB memory M1 Mac Mini sufficient to develop apps using Android Studio & Flutter or do you need the 16GB M1 Mac Mini?Let's find out by simulating. Android Studio fails to build my large Java + C (NDK) app on the M1 - Mac mini. The Java JVM crashes during one of the steps. This is true with both the built-in JVM and the Java 8 on my machine. I can build sample apps including Java + C, but not my app that is in production. The same app builds fine on an Intel MacBook Pro.
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:
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
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.
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)
Mac Mini M1 Android Emulator
After pressing the launch button you will get your Android application running in your ARM virtual emulator :-)
Mac Mini M1 Android Emulator Pc
Conclusion
Mac Mini M1 16gb
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: