Setting up the environment
Setup for iOS needs:
- Node (with NVM)
- Watchman
brew install watchman
- Xcode (install from the App Store)
- Xcode Command Line Tools
xcode-select --install
- Accept the Software License for Xcode
sudo xcodebuild -license
. It'll prompt you anyway when you run Xcode for the first time. - CocoaPods
sudo gem install cocoapods
Homebrew
Install Homebrew if you don't have it installed already
Node LTS with NVM
How to create Android emulators in M1 Mac. Using Android Studio Emulators in M1 Mac: Previously, when M1 Macbooks were released, Android studio didn’t have any support for emulators. Google has released a different preview build for emulators. You can check this build here. Support for downloading the M1-based emulator was added to SDK Manager, so it's not necessary to go to the Github releases page to download a standalone.app anymore. In AVD Manager go to the Other Images tab as by default it doesn't show the ARM64 images. Android Emulator M1 Preview. Get the fastest and smoothest gaming performance with BlueStacks - the world's most popular, safest and FREE Mobile Gaming Platform for Windows and Mac.
Aug 19, 2021 Step 1 → Download Android Studio and choose correct version for Mac M1 chip. Step 2 → Install Android Studio and create emulator (if it’s created by default don’t use that one. I created manually) Now run your emualtor from AVD Manager because in my case it was not showing emulator option. Your emulator started but It’s not showing. This is the first preview. This only works on M1 Apple Silicon Macs. It has a lot of rough edges. To use, open the.dmg, drag/drop to /Applications, then right click in /Applications and select Open; skip the developer identity verification check. The first launch may take a while. Files: android-emulator-m1-preview.dmg: Download this file.
iOS
- Open Terminal / iTerm with Rosetta (Get Info > Open using Rosetta)
- Prefix the CocoaPods related commands with
arch -x86_64
Android
- Install JDK 8
brew install --cask adoptopenjdk/openjdk/adoptopenjdk8
- Install Android Studio
- Install Android Emulator for M1
The Android Emulator doesn't work out of the box yet. Luckily, there is a Preview build by Google that supports Apple Silicon M1 chip based MacBooks. You'll have to download and install it separately. Most things work.
Troubleshooting
command not found
forbrew
ornvm
. Make sure you have a~/.zshrc
file. On a fresh new M1 MacBook, there is no~/.zshrc
or~/.zprofile
created and the$PATH
doesn't get updated because of it. Create a~/.zshrc
file and run the commands to install Homebrew and NVM again.
Add this to you Podfile
Two options:
- Run on a different port
react-native start --port=8088
- OR find out what program is using 8081
sudo lsof -i :8081
and kill itkill -9 1234
incorrect architecture 'x86_64' errors
add this to the Podfile
run pod install
afterwards
Links
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
Android Emulator For Macbook Pro
(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.
Android Studio Mac M1
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)
After pressing the launch button you will get your Android application running in your ARM virtual emulator :-)
Conclusion
Ld Player
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: