How do I download the Android SDK without downloading Android Studio?
Well the folks who are trying to download either on *ix or Ec2 machine would suggest to clean approach in below steps:
$ mkdir android-sdk
$ cd android-sdk
$ mkdir cmdline-tools
$ cd cmdline-tools
$ wget https://dl.google.com/android/repository/commandlinetools-linux-*.zip
$ unzip commandlinetools-linux-*.zip
The king – sdkmanager lives inside
cmdline-tools/tools/bin
, you’d better set in PATH environment variable.
but cmdline-tools
should not be set as ANDROID_HOME
. Because later, when updating Android SDK, or installing more packages, the other packages will be placed under ANDROID_HOME
, but not under cmdline-tools
.
The final, complete ANDROID_HOME directory structure should look like below, consist of quite a few sub-directories:
build-tools, cmdline-tools, emulator, licenses, patcher, platform-tools, platforms, tools
.
You can easily point out that build-tools
and cmdline-tools
are siblings, all resides inside the parent ANDROID_HOME.
Add SDK tools directory in PATH environment variable to make executable available globally. Add below line either in ~/.bashrc
or ~/.profile
file to make it permanent.
In order to edit the ~/.bashrc
simply can be editable in vim mode
$ vim .bashrc
Now set your preferred ANDROID_HOME
in .bashrc
file :
export ANDROID_HOME=/home/<user>/android-sdk
export PATH=${PATH}:$ANDROID_HOME/cmdline-tools/tools/bin:$ANDROID_HOME/platform-tools
here strange thing that we haven’t download the platform-tools
directory as of now but mentoning it under path but let it be as it will help you avoid remodification on the same file later.
Now go inside the same directory:
$ cd android-sdk
NOTE
: well in first attempt sdkmanager command didnt found for me so I close the terminal and again created the connection or you can also refresh the same if it works for you.
after that use the sdkmanager to list and install the packages needed:
$ sdkmanager "platform-tools" "platforms;android-27" "build-tools;27.0.3"
Hence Sdkmanager path is already set it will be accessible from anywhere:
$ sdkmanager --update
$ sdkmanager --list
Installed packages:=====================] 100% Computing updates...
Path | Version | Description | Location
------- | ------- | ------- | -------
build-tools;27.0.3 | 27.0.3 | Android SDK Build-Tools 27.0.3 | build-tools/27.0.3/
emulator | 30.0.12 | Android Emulator | emulator/
patcher;v4 | 1 | SDK Patch Applier v4 | patcher/v4/
platform-tools | 30.0.1 | Android SDK Platform-Tools | platform-tools/
platforms;android-27 | 3 | Android SDK Platform 27 | platforms/android-27/