Skip to content

Instantly share code, notes, and snippets.

@patrickhammond
Last active March 14, 2024 10:38
Show Gist options
  • Save patrickhammond/4ddbe49a67e5eb1b9c03 to your computer and use it in GitHub Desktop.
Save patrickhammond/4ddbe49a67e5eb1b9c03 to your computer and use it in GitHub Desktop.
Easily setup an Android development environment on a Mac

Here is a high level overview for what you need to do to get most of an Android environment setup and maintained.

Prerequisites (for Homebrew at a minimum, lots of other tools need these too):

  • XCode is installed (via the App Store)
  • XCode command line tools are installed (xcode-select --install will prompt up a dialog)
  • Java

Install Homebrew:

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

Make sure the doctor is happy (do what it tells you):

brew doctor

Use Homebrew to install Android dev tools:

brew install ant
brew install maven
brew install gradle
brew install android-sdk
brew install android-ndk

Install all of the Android SDK components (you will be prompted to agree to license info and then this will take a while to run):

android update sdk --no-ui

Install HAXM for blazing fast emulators. Check out the "Configuring VM Acceleration on Mac" section here: http://developer.android.com/tools/devices/emulator.html

Update your environment variables:

export ANT_HOME=/usr/local/opt/ant
export MAVEN_HOME=/usr/local/opt/maven
export GRADLE_HOME=/usr/local/opt/gradle
export ANDROID_HOME=/usr/local/opt/android-sdk
export ANDROID_NDK_HOME=/usr/local/opt/android-ndk

Update your paths (bonus points to a better solution to the hardcoded build tools version):

export PATH=$ANT_HOME/bin:$PATH
export PATH=$MAVEN_HOME/bin:$PATH
export PATH=$GRADLE_HOME/bin:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/build-tools/19.1.0:$PATH

Periodically run these commands again to ensure you're staying up to date:

brew update
android update sdk --no-ui
  • Note: It looks like there might be an issue with brew update and the android-sdk formula.

Install Eclipse, IntelliJ, Android Studio, or your other favorite IDE.

If everything goes smoothly on a moderate network connection you can expect this process to take 2-4 hours.

@lahdekorpi
Copy link

@molcik that website is just absolute spam. It only provides an alternative "solution" of installing Android Studio. And then links to this very gist.
Should probably be reported as spam...

@djangofan
Copy link

Of course, brew cask install java will install and help you maintain the JDK.

or asdf plugin-add java && asdf install java oracle-8.191 && asdf global java oracle-8.191

@X901
Copy link

X901 commented Jan 3, 2019

Thank you so much , Finally working with showing this error Cannot find AVD system path. Please define ANDROID_SDK_ROOT

@MuntashirAkon
Copy link

android-ndk is no longer available.

@andrewhavens
Copy link

andrewhavens commented May 1, 2019

2019 Update:

Some packages have been removed or changed (such as java, android-ndk, etc). This is what worked for me:

brew cask install adoptopenjdk8
brew cask install android-sdk

echo "export ANDROID_HOME=/usr/local/share/android-sdk" >> ~/.bash_profile
source ~/.bash_profile

touch ~/.android/repositories.cfg
sdkmanager --update
sdkmanager "platform-tools" "platforms;android-28"

The sdkmanager had a problem when ~/.android/repositories.cfg didn't exist, but by simply creating the file, it solved the problem.

@romenigld
Copy link

romenigld commented May 11, 2019

Install with:
brew cask install android-studio

@8secz-johndpope
Copy link

brew cask install android-studio

@justmara
Copy link

brew install android-studio --cask since new brew

@ThePredators
Copy link

For People who make both Android, iOS Apps i made a crazy doc here

Enjoy !

@phamsarah
Copy link

Note, adoptopendk8 has been officially discontinued, it may stop working in recent versions of MacOS.
Temurin is the official successor:

brew install --cask temurin8

@ThePredators
Copy link

I advice you guy to use Jabba instead of anything else ! https://github.com/shyiko/jabba

@intfrr
Copy link

intfrr commented Mar 6, 2023

It's better to use sdkman to instal any jdk version (temurin or any other), ant, gradle and maven

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment