Could anybody post a working solution for setting ANDROID_HOME
via the terminal?
My path to the Android-SDK is /Applications/ADT/sdk
.
Where the Android-SDK is installed depends on how you installed it.
If you downloaded the SDK through their website and then dragged/dropped the Application to your Applications folder, it's most likely here: /Applications/ADT/sdk (as it is in your case). If you installed the SDK using Homebrew (brew cask install android-sdk), then it's located here: /usr/local/Caskroom/android-sdk/{YOUR_SDK_VERSION_NUMBER} If the SDK was installed automatically as part of Android Studio then it's located here: /Users/{YOUR_USER_NAME}/Library/Android/sdk
Once you know the location, open a terminal window and enter the following (changing out the path to the SDK to be however you installed it):
export ANDROID_HOME={YOUR_PATH}
Once you have this set, you need to add this to the PATH environment variable:
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
Lastly apply these changes by re-sourcing .bash_profile:
source ~/.bash_profile
Type - echo $ANDROID_HOME to check if the home is set.
echo $ANDROID_HOME
In Terminal:
nano ~/.bash_profile
Add lines:
export ANDROID_HOME=/YOUR_PATH_TO/android-sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
Check it worked:
source ~/.bash_profile
echo $ANDROID_HOME
export PATH=$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$PATH
echo $PATH
, it doesn't output the latest dirs I saved in .bash_profile.
Adding the following to my .bash_profile worked for me:
export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
I am having MAC OS X(Sierra) 10.12.2.
I set ANDROID_HOME to work on React Native(for Android apps) by following the following steps.
Open Terminal (press Command+SpaceBar, type Terminal, Hit ENTER).
Add the following 3 lines to ~/.bash_profile. export ANDROID_HOME=$HOME/Library/Android/sdk/ export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/platform-tools
Finally execute the below command (or RESTART the system to reflect the changes made). source ~/.bash_profile
That's it.
~
is a shortcut for your home folder. If you do not know where is your home folder, type cd
on the terminal. Typing cd will take you to your home folder. then you can do vi .bash_profile
or nano .bash_profile
to open/edit the file.
quoting @user2993582's answer
export PATH=$PATH:$ANDROID_HOME/bin
The 'bin' part has changed and it should be
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
I'm using React Native with Catalina mac os and zsh shell
1- touch ~/.zshrc
2- open ~/.zshrc
3- according to React Native android setup copy and past
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
to the opened text file then save and close the file.
4- run source ~/.zshrc and make sure to restart your terminal.
5- run adb you will get something like
Android Debug Bridge version 1.0.41 Version 30.0.0-6374843
thanks for this documented
update1 16/2/2021
this solution works with Big Sur as well.
Could anybody post a working solution for doing this in the terminal?
ANDROID_HOME
is usually a directory like .android
. Its where things like the Debug Key will be stored.
export ANDROID_HOME=~/.android
You can automate it for your login. Just add it to your .bash_profile
(below is from my OS X 10.8.5 machine):
$ cat ~/.bash_profile
# MacPorts Installer addition on 2012-07-19 at 20:21:05
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Android
export ANDROID_NDK_ROOT=/opt/android-ndk-r9
export ANDROID_SDK_ROOT=/opt/android-sdk
export JAVA_HOME=`/usr/libexec/java_home`
export ANDROID_HOME=~/.android
export PATH="$ANDROID_SDK_ROOT/tools/":"$ANDROID_SDK_ROOT/platform-tools/":"$PATH"
According to David Turner on the NDK Mailing List, both ANDROID_NDK_ROOT
and ANDROID_SDK_ROOT
need to be set because other tools depend on those values (see Recommended NDK Directory?).
After modifying ~/.bash_profile
, then perform the following (or logoff and back on):
source ~/.bash_profile
To set ANDROID_HOME
, variable, you need to know how you installed android dev setup.
If you don't know you can check if the following paths exist in your machine. Add the following to .bashrc
, .zshrc
, or .profile
depending on what you use
If you installed with homebrew,
export ANDROID_HOME=/usr/local/opt/android-sdk
Check if this path exists:
If you installed android studio following the website,
export ANDROID_HOME=~/Library/Android/sdk
Finally add it to path:
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
If you're too lazy to open an editor do this:
echo "export ANDROID_HOME=~/Library/Android/sdk" >> ~/.bashrc
echo "export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools" >> ~/.bashrc
The ANDROID_HOME environment is the same as the ANDROID_SDK_ROOT environment, this means it defines the path to the SDK installation directory.
I set up the Android SDK separate from android studio, it gives me more control of where things are.
First, I download the Android SDK (Command line tools) from the official website.
cd $HOME/Downloads
curl https://dl.google.com/android/repository/commandlinetools-mac-7302050_latest.zip --output android-sdk.zip
Second, I unzip the file in the Downloads directory, this process will generate a directory called cmdline-tools.
unzip android-sdk.zip
Third, I create a directory called android in the local directory. (/usr/local system-wide, read-only files installed by the local administrator, usually you)
sudo mkdir /usr/local/android
Fourth, I move the directory generated by decompression to the android directory renaming it to sdk. (In the future I will add the ndk directory beside the sdk)
sudo mv cmdline-tools /usr/local/android/sdk
Fifth, I manually add the environment variables to the .zshrc file in my personal directory.
nano $HOME/.zshrc
# ...
# Set environment variables for Android SDK
export ANDROID_SDK_ROOT=/usr/local/android/sdk
export ANDROID_HOME=$ANDROID_SDK_ROOT
# Insert executable file paths in PATH environment variable
export PATH=$PATH:$ANDROID_HOME/bin
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
A lot of correct answers here. However, one item is missing and I wasn't able to run the emulator from the command line without it.
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$PATH:$JAVA_HOME/bin
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator # can't run emulator without it
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools
So it's a compilation of the answers above plus a solution for this problem.
And if you use zsh
(instead of bash
) the file to edit is ~/.zshrc
.
Setup ANDROID_HOME , JAVA_HOME enviromental variable on Mac OS X
Add In .bash_profile file
export JAVA_HOME=$(/usr/libexec/java_home)
export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
For Test
echo $ANDROID_HOME
echo $JAVA_HOME
People, note that if you will use ~/.bash_profile
then it will edit not your user's bash profile, but global. Instead go to your users directory (/Users/username) and edit it directly:
vim .bash_profile
And insert following two lines with respect to your Username and SDK directory
export PATH=$PATH:/Users/<username>/Library/Android/sdk/tools
export PATH=$PATH:/Users/<username>/Library/Android/sdk/platform-tools
~/
means that it is a file in the user's home directory.
cd ~; ls
and see what that prints.
1) Open base profile :
open ~/.bash_profile
2) Add below line in base profile :
export PATH=${PATH}:/Users/<username>/Library/Android/sdk/build-tools/27.0.3
Save and close base profile.
For me 27.0.3 working great.
Success story sharing
tools
notbin
)