Published Sep 16, 2025 ⦁ Updated Nov 4, 2026 ⦁ 7 min read

Android SDK Download: Install With or Without Android Studio

The Android SDK (Android software development kit, also called the Android software developer kit) is a free download from Google: the platform libraries for each Android version, the build tools, adb, and the emulator. There is no single "Android SDK installer" any more. You get it one of two ways: install Android Studio, whose setup wizard downloads the SDK for you, or download the command line tools only zip and fetch the packages you need with sdkmanager (or the newer Android CLI). If you only need adb and fastboot, there is a third, much smaller download: SDK Platform-Tools. This guide covers all three on Windows, macOS and Linux, with exact commands, package names and file sizes as of November 2026.

API 37
Android 17, the latest stable SDK platform (June 16, 2026)
API 36+
Minimum targetSdk for new apps and updates on Google Play since Aug 31, 2026
155.7 MB
Command line tools zip for Windows (build 15859902)
1.5 GB
Android Studio Rabbit 2 installer for Windows and macOS
25.4%
Share of Android devices on Android 16, the largest single version
16 GB
Minimum RAM Google lists for Android Studio plus the emulator

Which download do you need?

All of these come from the Android SDK software development kit official website, developer.android.com. Pick by what you are going to do, not by the name: every Android SDK tools download ends up as one of these three files.

You want to... Download Size (as of Nov 2026)
Build Android apps with an IDE, layout preview and emulator UI Android Studio Rabbit 2 (includes the SDK Manager) 1.5 GB installer (1.6 GB on Linux), several GB more after the first-run SDK download
Build on a CI server, in Docker, or with another editor (VS Code, Flutter, React Native) Command line tools only 155.7 MB (Windows), 156.1 to 156.3 MB (macOS), 181.8 MB (Linux), plus packages
Only run adb or fastboot against a phone SDK Platform-Tools about 8 MB (Windows), 9 MB (Linux), 16 MB (macOS)

The current Android Studio release is Android Studio Rabbit 2 (2026.2.2), and the command line tools build on the download page is 15859902 (package version 22.0), per the Android Studio download page. The latest stable Android release is Android 17 (API level 37), which Google released on June 16, 2026.

Android SDK download sizes by option (MB, as of November 2026)
Android Studio (Linux) 1.6 GB
Android Studio (Windows/macOS) 1.5 GB
Command line tools (Linux) 181.8 MB
Command line tools (Windows) 155.7 MB
Platform-Tools (macOS) 16.1 MB
Platform-Tools (Windows) 8 MB

Android Studio sizes are the installers before the first-run SDK download. Platform-tools sizes are the 37.0.1 zips. Source: Android Studio download page and Google's SDK repository

What is inside the Android SDK

The Android app development SDK is not one program. It is a folder (the "SDK root") of separately versioned packages that you add and update independently. The ones you will touch:

Package sdkmanager path What it gives you Latest stable (Nov 2026)
Platform-Tools platform-tools adb, fastboot 37.0.1 (July 2026)
SDK Platform platforms;android-37.0 the android.jar you compile against (compileSdk) API 37, plus minor 37.1 and 37.2
Build-Tools build-tools;37.0.0 aapt2, d8, apksigner, zipalign 37.0.0
Command-line Tools cmdline-tools;latest sdkmanager, avdmanager, apkanalyzer, lint 23.0
Emulator emulator the Android Emulator (QEMU based) 37.2.13
System images system-images;android-37.0;google_apis;x86_64 the OS image a virtual device boots API 37.0
NDK and CMake (optional) ndk;<version>, cmake;<version> C/C++ toolchain NDK 30.0, CMake 4.1.2

Package versions come from Google's SDK repository index, the same file sdkmanager and Android Studio read. Two points trip people up:

  • API 37 packages carry a minor version. Starting with Android 16's minor release (API 36.1), Google ships platforms as platforms;android-37.0, platforms;android-37.1 and so on. There is no platforms;android-37 package, so copy-pasted commands from older guides fail with "Failed to find package". API 36 and lower still use the old form (platforms;android-36).
  • The old "SDK Tools" package is dead. The tools package (with tools/bin/sdkmanager and the standalone SDK Manager window) stopped at revision 26.1.1 in September 2017 and is deprecated. Every current guide, including this one, uses cmdline-tools. If a tutorial tells you to run android to open the SDK Manager, or to download installer_r24.4.1-windows.exe, it is a decade old.

Android SDK versions and API levels (as of November 2026)

Each Android release has an API level, and the SDK platform for that level is what you install. As of November 2026:

Android version API level sdkmanager platform package Status Share of devices*
Android 17 37 (minor: 37.1, 37.2) platforms;android-37.0 Latest stable, June 2026 0.9%
Android 16 36 (minor: 36.1) platforms;android-36 Required target on Google Play 25.4%
Android 15 35 platforms;android-35 Minimum target for existing apps 14.7%
Android 14 34 platforms;android-34 15.3%
Android 13 33 platforms;android-33 11.8%
Android 12 / 12L 31 / 32 platforms;android-31 9.6%
Android 11 30 platforms;android-30 10.5%
Android 10 29 platforms;android-29 5.7%
Android 9 and older 28 and lower platforms;android-28 ... 5.8% combined

*Share from Google's own distribution data (the file behind Android Studio's "API version distribution" chart), last updated October 1, 2026.

Android version distribution (share of active devices)
Android 16 (API 36) 25.4%
Android 14 (API 34) 15.3%
Android 15 (API 35) 14.7%
Android 13 (API 33) 11.8%
Android 11 (API 30) 10.5%
Android 12 (API 31) 9.6%
Android 10 (API 29) 5.7%
Android 9 (API 28) 3.1%
Android 8.1 (API 27) 1.5%
Android 17 (API 37) 0.9%

Android 17 shipped on June 16, 2026, so its share is still small. Source: Google, Android Studio distribution data (updated Oct 1, 2026)

That data also answers the question every new project asks: what minSdk should I pick? Adding up Google's shares gives the share of devices that can install your app at each minimum:

Devices that can install your app, by minSdk
minSdk 24 (Android 7.0) 99.4%
minSdk 26 (Android 8.0) 99%
minSdk 28 (Android 9) 97%
minSdk 29 (Android 10) 93.9%
minSdk 30 (Android 11) 88.2%
minSdk 31 (Android 12) 77.7%
minSdk 33 (Android 13) 68.1%
minSdk 34 (Android 14) 56.3%

Cumulative share of devices running that API level or higher. Source: Calculated from Google's distribution data (Oct 1, 2026)

Three different numbers live in your Gradle file, and only one of them changes what you download:

  • compileSdk: the SDK platform you compile against. You must have it installed (platforms;android-37.0 for compileSdk = 37). Use the newest.
  • targetSdk: the Android version whose behavior your app opts into. Google Play sets the floor (next section).
  • minSdk: the oldest Android version the app installs on. No download needed; it only limits which APIs you can call without checks.
  1. June 2022Android 13 (API 33) SDK platform released to stable.
  2. June 2023Android 14 (API 34) SDK platform released to stable.
  3. June 2024Android 15 (API 35) SDK platform released to stable.
  4. June 10, 2025Android 16 (API 36) released, with a minor SDK release (API 36.1) planned for Q4 2025.
  5. August 31, 2025Google Play requires new apps and updates to target API 35.
  6. February 2026Platform-Tools 37.0.0 and the first Android 17 beta.
  7. June 16, 2026Android 17 (API 37) released and source pushed to AOSP.
  8. August 31, 2026Google Play requires new apps and updates to target API 36.
  9. November 1, 2026Last day of the optional Play extension for the API 36 requirement.

Google Play target API level requirements

If you plan to publish, the SDK platform you install is driven by Google Play's targetSdk rules. As of November 2026, per Google's target API level page and the Play Console Help article:

App type New apps and app updates must target Since
Phone and tablet apps Android 16 (API 36) or higher August 31, 2026
Wear OS Android 15 (API 35) or higher August 31, 2026
Android Automotive OS Android 15 (API 35) or higher August 31, 2026
Android TV Android 14 (API 34) or higher August 31, 2025
Android XR Android 14 (API 34) or higher August 31, 2026
Existing apps (to stay visible to new users on newer Android) Android 15 (API 35) or higher August 31, 2026

Developers who needed more time could request an extension to November 1, 2026. That date has passed, so any phone app update you upload now must target API 36 or higher. Permanently private apps distributed only inside one organization are exempt. In practice, install platforms;android-37.0 (to compile against the newest APIs) and set targetSdk to 36 or 37.

This is the right path if you are writing an Android app. Android Studio is the IDE, but it is also the easiest Android SDK manager download: you get the SDK, the graphical SDK Manager, the emulator and a bundled JDK in one install. There is no separate Android Studio with SDK download any more, because the Android Studio SDK download happens inside the setup wizard on first launch.

  1. Check the system requirements (table below). The short version: 64-bit Windows 10 or later, macOS 12 or later, or 64-bit Linux with glibc 2.31+, 8 GB RAM for Studio alone and 16 GB with the emulator.
  2. Download Android Studio from developer.android.com/studio and accept the Android SDK License Agreement.
  3. Install it:
    • Windows: run android-studio-rabbit2-windows.exe (or unzip the no-installer .zip).
    • macOS: open android-studio-rabbit2-mac_arm.dmg (Apple silicon) or android-studio-rabbit2-mac.dmg (Intel) and drag Android Studio into Applications.
    • Linux: unpack android-studio-rabbit2-linux.tar.gz (for example into /opt/ or /usr/local/) and run android-studio/bin/studio.sh. On 64-bit Ubuntu, Google says to add 32-bit libraries first: sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386 (Fedora: sudo yum install zlib.i686 ncurses-libs.i686 bzip2-libs.i686).
    • ChromeOS: install android-studio-rabbit2-cros.deb in the Linux environment.
  4. Launch it and follow the Setup Wizard. Choose Standard. It downloads the latest SDK Platform, Platform-Tools, Build-Tools, the emulator and a system image.
  5. Note the Android SDK Location the wizard shows. The defaults are:
    • Windows: %LOCALAPPDATA%\Android\Sdk (for example C:\Users\you\AppData\Local\Android\Sdk)
    • macOS: ~/Library/Android/sdk
    • Linux: ~/Android/Sdk
Requirement Windows macOS Linux
OS 64-bit Windows 10 or later macOS 12 or later 64-bit distro with GNOME, KDE or Unity; glibc 2.31+
CPU Virtualization (VT-x/AMD-V); 2017+ CPU such as Intel 8th Gen Core i5 or AMD Ryzen Apple M1 or newer, or 6th gen Intel Core or newer Same as Windows
ARM support Not supported Apple silicon supported (Intel Macs being phased out) Not supported
RAM 8 GB (Studio), 16 GB (Studio + emulator), 32 GB recommended Same Same
Disk 8 GB (Studio), 16 GB (Studio + emulator), SSD with 32 GB recommended Same Same
Screen 1280 x 800 minimum Same Same

Source: Install Android Studio. Google also notes each extra virtual device can take up to 6 GB of disk and roughly 4 GB of memory while it runs.

You do not need a separate Java install for this path. Android Studio ships with the JetBrains Runtime (JBR), and new projects use it for Gradle by default, according to the Java versions guide.

Using the SDK Manager in Android Studio

The Android SDK Manager is built into Android Studio; there is no separate SDK Manager download any more. Open it from Tools > SDK Manager (with a project open), More Actions > SDK Manager (on the Welcome screen), or Settings > Languages & Frameworks > Android SDK.

  • SDK Platforms tab: tick the Android versions you compile against, for example Android 17 (API 37). Android 17's codename in the list is "Cinnamon Bun".
  • SDK Tools tab: Build-Tools, Platform-Tools, Emulator, NDK, CMake, Command-line Tools (latest). Tick Show Package Details to pick exact versions, for example Build-Tools 37.0.0.
  • The Android SDK Location field at the top shows (and can change) the SDK path. This is the value you would put in ANDROID_HOME.
  • Click Apply to download. Studio accepts the licenses as part of the flow.

Option 2: Download the Android SDK without Android Studio

Use this for CI, containers, headless servers, or when you write code in VS Code, IntelliJ or Neovim. You need JDK 17 or newer on your PATH: the Android Gradle plugin 9.5 requires JDK 17, and the current command line tools will not start on older Java (see Common problems).

When you download Android SDK packages this way, the flow is the same on every OS: download the zip, put it in cmdline-tools/latest/, set ANDROID_HOME, install packages, accept licenses. Here are the files:

OS File on the download page Size Suggested SDK root
Windows commandlinetools-win-15859902_latest.zip 155.7 MB C:\Android\sdk
macOS (Apple silicon) commandlinetools-mac_arm64-15859902_latest.zip 156.1 MB ~/Library/Android/sdk
macOS (Intel) commandlinetools-mac_x86_64-15859902_latest.zip 156.3 MB ~/Library/Android/sdk
Linux commandlinetools-linux-15859902_latest.zip 181.8 MB ~/Android/Sdk or /opt/android-sdk
  1. On the Android Studio download page, scroll to Command line tools only and download the zip for your OS. Check the SHA-256 shown next to it.
  2. Create the folder layout that sdkmanager expects. This step trips up most people: the zip contains a cmdline-tools folder, and its contents must end up in <sdk>/cmdline-tools/latest/, per the sdkmanager docs.
# Linux / macOS
mkdir -p ~/android-sdk/cmdline-tools
unzip commandlinetools-linux-*_latest.zip -d ~/android-sdk/cmdline-tools
mv ~/android-sdk/cmdline-tools/cmdline-tools ~/android-sdk/cmdline-tools/latest

The result should be ~/android-sdk/cmdline-tools/latest/bin/sdkmanager, with lib/, NOTICE.txt and source.properties next to bin/.

  1. Set environment variables. ANDROID_HOME is the one to use; ANDROID_SDK_ROOT is deprecated, and if you set both, Android Studio and the Android Gradle plugin check that they match (environment variables).
# ~/.bashrc or ~/.zshrc
export ANDROID_HOME="$HOME/android-sdk"
export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator"

On Windows (PowerShell), set them for your user:

[Environment]::SetEnvironmentVariable("ANDROID_HOME", "C:\Android\sdk", "User")
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Android\sdk\cmdline-tools\latest\bin;C:\Android\sdk\platform-tools", "User")

Open a new terminal after this.

  1. Install packages and accept the licenses:
sdkmanager --list                     # see available versions
sdkmanager "platform-tools" "platforms;android-37.0" "build-tools;37.0.0"
sdkmanager --licenses                 # required on CI before the first Gradle build
  1. Verify:
sdkmanager --list_installed
adb version

To update everything later, run sdkmanager --update. To update the command line tools themselves (the download page lags the repository: it offers version 22.0 while cmdline-tools;latest is 23.0), run sdkmanager "cmdline-tools;latest".

Download Android SDK for Windows

Step by step in PowerShell, assuming the zip is in your Downloads folder and you want the SDK in C:\Android\sdk:

New-Item -ItemType Directory -Force C:\Android\sdk\cmdline-tools | Out-Null
Expand-Archive "$HOME\Downloads\commandlinetools-win-15859902_latest.zip" -DestinationPath C:\Android\sdk\cmdline-tools
Rename-Item C:\Android\sdk\cmdline-tools\cmdline-tools latest

# after setting ANDROID_HOME and Path (step 3) and opening a new terminal:
sdkmanager.bat "platform-tools" "platforms;android-37.0" "build-tools;37.0.0"
sdkmanager.bat --licenses

Windows notes: use a path without spaces (C:\Android\sdk, not C:\Program Files\...), because some build tools still choke on spaces. The emulator needs virtualization enabled in the BIOS/UEFI. Windows on ARM (Snapdragon laptops) is not supported by Android Studio as of November 2026, per the install page.

Download Android SDK for macOS

Same steps as Linux, with the mac_arm64 zip on Apple silicon (M1 and later) or mac_x86_64 on Intel. Use ~/Library/Android/sdk as the root so Android Studio finds it if you install Studio later, and put the export lines in ~/.zprofile or ~/.zshrc (zsh is the default shell).

If you use Homebrew, there are casks for all three downloads:

brew install --cask temurin                    # a JDK (the SDK tools need Java)
brew install --cask android-commandlinetools   # build 15859902
brew install --cask android-platform-tools     # adb/fastboot 37.0.1 only
brew install --cask android-studio             # Rabbit 2 (2026.2.2.8)

The android-commandlinetools cask installs into $HOMEBREW_PREFIX/share/android-commandlinetools (per its Homebrew page), so set ANDROID_HOME to that path. If macOS Gatekeeper blocks a manually downloaded binary with "cannot be opened because the developer cannot be verified", Control-click it in Finder and choose Open once.

Android SDK Linux download

Linux is the most common no-Studio setup because CI runners and Docker images run on it. A full setup on Ubuntu or Debian:

sudo apt-get update && sudo apt-get install -y openjdk-17-jdk unzip wget
mkdir -p ~/Android/Sdk/cmdline-tools && cd ~/Android/Sdk/cmdline-tools
wget https://dl.google.com/android/repository/commandlinetools-linux-15859902_latest.zip
unzip commandlinetools-linux-15859902_latest.zip && mv cmdline-tools latest
echo 'export ANDROID_HOME="$HOME/Android/Sdk"' >> ~/.bashrc
echo 'export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools"' >> ~/.bashrc
source ~/.bashrc
yes | sdkmanager --licenses
sdkmanager "platform-tools" "platforms;android-37.0" "build-tools;37.0.0"

ARM64 Linux machines (Raspberry Pi, Graviton, Ampere) are not supported by Android Studio, and Google's SDK repository publishes ARM64 host builds only for macOS, with an x86_64-only emulator for Linux. Plan on an x86_64 runner for Android builds.

Use the Android SDK in Docker and CI

For a reproducible CI image, bake the SDK into the image and pin exact versions (the sdkmanager docs recommend specific versions over latest for scripts):

FROM eclipse-temurin:17-jdk
ENV ANDROID_HOME=/opt/android-sdk
ENV PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools
RUN apt-get update && apt-get install -y --no-install-recommends unzip wget \
 && mkdir -p $ANDROID_HOME/cmdline-tools \
 && wget -q https://dl.google.com/android/repository/commandlinetools-linux-15859902_latest.zip -O /tmp/clt.zip \
 && unzip -q /tmp/clt.zip -d $ANDROID_HOME/cmdline-tools \
 && mv $ANDROID_HOME/cmdline-tools/cmdline-tools $ANDROID_HOME/cmdline-tools/latest \
 && rm /tmp/clt.zip
RUN yes | sdkmanager --licenses > /dev/null \
 && sdkmanager "platform-tools" "platforms;android-37.0" "build-tools;37.0.0"

You can also list packages in a text file, one per line, and install them with sdkmanager --package_file=packages.txt. Behind a corporate proxy, add --proxy=http --proxy_host=proxy.example.com --proxy_port=8080. To prepare an SDK for a different OS than the one you are on (for example, building a Windows SDK folder on Linux), set REPO_OS_OVERRIDE to windows, macosx or linux.

Use the SDK with Flutter, React Native or VS Code

These tools do not ship their own Android SDK; they look for yours through ANDROID_HOME (or Android Studio's default location).

  • Flutter: after installing the SDK, run flutter config --android-sdk <path-to-sdk> if Flutter cannot find it, then flutter doctor --android-licenses and flutter doctor. Flutter needs cmdline-tools;latest installed, or flutter doctor reports "cmdline-tools component is missing".
  • React Native: the CLI reads ANDROID_HOME and expects platform-tools on PATH. Install the platform and build-tools versions your android/build.gradle asks for.
  • VS Code / any editor: Gradle reads ANDROID_HOME or the sdk.dir line in the project's local.properties. Keep local.properties out of git (it holds a machine-specific path); our .gitignore generator includes it in the Android template.

sdkmanager command cheat sheet

Task sdkmanager Android CLI
List available and installed packages sdkmanager --list android sdk list
Show only updates sdkmanager --list --newer android sdk list
Install packages sdkmanager "platform-tools" "platforms;android-37.0" android sdk install platform-tools platforms/android-37.0
Update everything sdkmanager --update android sdk update
Update one package sdkmanager "emulator" android sdk update emulator
Remove a package sdkmanager --uninstall "platforms;android-30" android sdk remove platforms/android-30
Accept licenses sdkmanager --licenses handled on install
Use another SDK folder --sdk_root=/path --sdk=/path
Include preview packages --channel=1 (beta) or --channel=3 (canary) --beta or --canary
Install an NDK sdkmanager --install "ndk;30.0.16248370" android sdk install ndk/30.0.16248370

A note on the new Android CLI

As of November 2026 the sdkmanager page marks sdkmanager as deprecated in favor of the new Android CLI, which manages packages with android sdk install, android sdk list, android sdk update and android sdk remove. It accepts slash-style package paths (platforms/android-37.0) and the old semicolon style for backward compatibility. sdkmanager still ships in the command-line tools and works, so existing scripts keep running. For new scripts, the Android CLI is the direction Google is taking.

The Android CLI does more than package management: it can scaffold projects (android create), build, install and run apps, manage emulators, render Compose previews without a device, and profile apps. It is aimed at scripts and AI coding agents, and android init installs its agent skill. Download it from developer.android.com/tools/agents, then:

android update                          # update the Android CLI itself
android sdk update                      # update all installed SDK packages (stable channel)
android sdk install platform-tools platforms/android-37.0 build-tools/37.0.0
android --sdk=/opt/android-sdk sdk list # point at a specific SDK folder
android info                            # show which SDK it uses by default

To make a non-default SDK path permanent, put --sdk=/path/to/sdk in ~/.androidrc (macOS/Linux) or %USERPROFILE%\.androidrc (Windows). The CLI collects basic usage metrics; add --no-metrics to a command to turn that off.

Download only Android SDK Platform-Tools (adb and fastboot)

If you want to sideload an APK, read logs, or unlock a bootloader, you do not need the full Android SDK. Android platform tools download links from Google always point at the newest version (37.0.1, July 2026, per the Platform-Tools release notes):

Unzip anywhere, add the platform-tools folder to PATH, enable Developer options > USB debugging on the phone, and run adb devices. Google's advice: if you already have Android Studio, use the copy in your SDK folder instead, because Studio keeps it updated. Platform-Tools is backward compatible, so the latest version works with old phones too.

Set up the Android Emulator

In Android Studio: Tools > Device Manager, click + (Create Virtual Device), pick a phone profile and a system image, then press play.

From the command line:

# Use arm64-v8a on Apple Silicon, x86_64 on Intel/AMD
sdkmanager "emulator" "system-images;android-37.0;google_apis;x86_64"
avdmanager create avd -n pixel_api37 -k "system-images;android-37.0;google_apis;x86_64" -d pixel_8
emulator -avd pixel_api37

System image flavors: google_apis includes Google Play services, google_apis_playstore also includes the Play Store, and _ps16k variants use 16 KB memory pages (useful for testing native code). For headless CI tests, Google also publishes ATD (Automated Test Device) images that drop most user-facing apps to cut CPU and memory use (SDK platform release notes).

The emulator needs hardware virtualization (Intel VT-x or AMD-V enabled in BIOS on PCs). Google notes each virtual device can take up to 6 GB of disk, and running several at once needs about 4 GB of RAM each. To keep images off a small system drive, set ANDROID_AVD_HOME to a folder on a bigger disk.

Check that the SDK works

Create a new project in Android Studio (File > New > New Project > Empty Activity) and run it on the emulator. If you went the command-line route, check that your module's Gradle file compiles against an installed platform:

android {
    compileSdk = 37
    defaultConfig {
        minSdk = 24
        targetSdk = 37
    }
}

Then build with ./gradlew assembleDebug (gradlew.bat assembleDebug on Windows). Google's Android 17 SDK setup guide asks for Android Gradle plugin 8.9.0-rc01 or higher for compileSdk = 37; the current AGP 9.5 supports up to API 37 and needs Gradle 9.6.0. If Gradle cannot find the SDK, add sdk.dir=/path/to/android-sdk to local.properties in the project root, or set ANDROID_HOME.

A quick sanity checklist from a terminal:

echo $ANDROID_HOME          # should print your SDK root
sdkmanager --version        # 22.0 or 23.0
adb version                 # Android Debug Bridge version 1.0.41, platform-tools 37.0.1
java -version               # 17 or newer

Common problems

  • "Could not determine SDK root" or sdkmanager will not start: the tools are not in cmdline-tools/latest/. The full error tells you to "specify it explicitly with --sdk_root= or move this package into its expected location". Fix the folder layout from step 2, or pass --sdk_root= once.
  • UnsupportedClassVersionError ... class file version 61.0: you are running the current command line tools on Java 8 or 11. Class file version 61 is Java 17. Install JDK 17+ and point JAVA_HOME at it.
  • NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema: you are running the old tools/bin/sdkmanager (SDK Tools 26.1.1) on Java 9 or newer. Do not patch it; switch to cmdline-tools/latest/bin/sdkmanager.
  • "Android Gradle plugin requires Java 17": your JAVA_HOME points to an old JDK. Install JDK 17+ or point JAVA_HOME at Android Studio's bundled JBR (Android Studio.app/Contents/jbr/Contents/Home on macOS, <studio>/jbr on Windows and Linux).
  • Licenses not accepted on CI ("Failed to install the following Android SDK packages as some licences have not been accepted"): run yes | sdkmanager --licenses once in the build image, or copy the licenses/ folder from a machine where you accepted them.
  • "Failed to find package 'platforms;android-37'": use platforms;android-37.0. API 37 packages carry a minor version.
  • "SDK location not found. Define a valid SDK location with an ANDROID_HOME environment variable or by setting the sdk.dir path in your project's local properties file": exactly what it says. Set one of the two and restart the Gradle daemon (./gradlew --stop).
  • sdkmanager / adb "command not found" or "is not recognized": PATH does not include cmdline-tools/latest/bin and platform-tools, or you did not open a new terminal after editing it. On Windows, check the user Path in System Properties > Environment Variables.
  • Old guides say to add $ANDROID_HOME/tools to PATH: Google's environment variables page still shows that line, but the tools folder only exists if you installed the deprecated SDK Tools. Add cmdline-tools/latest/bin instead.
  • Emulator says "x86_64 emulation currently requires hardware acceleration": turn on VT-x/AMD-V in BIOS. On Windows, enable the Windows Hypervisor Platform feature.
  • Targeting API 37 changes behavior: besides the large-screen rule above, Android 17 adds an ACCESS_LOCAL_NETWORK permission for LAN traffic and delays programmatic SMS OTP access, per the Android 17 release notes. Test before bumping targetSdk.

If you are still choosing an editor, see our guide to Android Studio, the comparison of Android IDEs and the wider IDE category. For a full environment walkthrough including a physical device, read the Android development environment setup tutorial, and browse mobile developer tools on DevHunt. Building for iOS too? Start with the beginner's guide to mobile app development or cross-platform frameworks compared.

Best for writing Android apps in Kotlin or Java: Android Studio
One 1.5 GB download gets the SDK, SDK Manager, emulator UI and a bundled JDK. Least setup, and Google tests the SDK against it.
Best for CI, Docker, Flutter or React Native in VS Code: Command line tools only
About 156 MB plus only the packages you list. Scriptable with sdkmanager today and the Android CLI going forward.
Best for adb, fastboot, sideloading and flashing: SDK Platform-Tools
An 8 to 16 MB zip with no Java or install step. Always grab the latest link.

FAQ

Is the Android SDK free?

Yes. Android Studio, the command-line tools and all SDK packages are a free SDK download under the Android Software Development Kit License Agreement, with no paid tier. Publishing on Google Play costs a one-time US$25 registration fee.

Can I download the Android SDK without Android Studio?

Yes. Download "Command line tools only" from the Android Studio page, put it in cmdline-tools/latest/, and install packages with sdkmanager (or the newer android sdk install). This is the standard setup for CI servers, Docker images, Flutter and React Native work in VS Code.

Where is the Android SDK installed?

By default Android Studio puts it in %LOCALAPPDATA%\Android\Sdk on Windows, ~/Library/Android/sdk on macOS and ~/Android/Sdk on Linux. In Android Studio, Tools > SDK Manager shows the exact path at the top. For a command-line install, it is wherever you created the folder that holds cmdline-tools/.

What is the latest Android SDK version?

The Android SDK latest version, as of November 2026, is Android 17, API level 37, released June 16, 2026. Google's SDK repository also lists the minor platforms platforms;android-37.1 and platforms;android-37.2. The latest Platform-Tools is 37.0.1, Build-Tools 37.0.0 and command-line tools 23.0. Install the platform that matches the compileSdk in your project.

What is the difference between the Android SDK and Android Studio?

The SDK is the toolkit (libraries, compilers, adb, emulator). Android Studio is the IDE built on IntelliJ that downloads, manages and uses the SDK for you. You can use the SDK without Android Studio, but not the other way around.

What is the Android SDK manager and where do I download it?

The SDK Manager is the tool that installs and updates SDK packages. There is no standalone Android SDK manager download any more: it exists as Tools > SDK Manager inside Android Studio, and as the sdkmanager command inside the command line tools zip. The old standalone SDK Manager window was part of SDK Tools, deprecated since 2017.

How do I update the Android CLI and all installed SDK components to their latest versions?

Run android update to update the Android CLI itself, then android sdk update with no package name to update every installed SDK package to the latest stable version. Add --beta or --canary to include preview channels. With the older tools, sdkmanager --update does the same for SDK packages, and in Android Studio you use Help > Check for Updates plus the SDK Manager.

How do I set up and manage Android SDK packages from the command line without using the deprecated sdkmanager?

Use the Android CLI: android sdk list shows installed and available packages, android sdk install platform-tools platforms/android-37.0 build-tools/37.0.0 installs them, android sdk update updates them and android sdk remove <package> deletes them. Point it at a specific folder with --sdk=/path or a --sdk line in ~/.androidrc.

Where do I get the Android SDK command line tools download?

On developer.android.com/studio, in the "Command line tools only" section near the bottom. The files are commandlinetools-win-15859902_latest.zip, commandlinetools-mac_arm64-..., commandlinetools-mac_x86_64-... and commandlinetools-linux-..., each with a SHA-256 checksum.

How do I download the Android SDK for Windows 10 or 11 (64-bit)?

Either run the Android Studio .exe installer, which installs the SDK into %LOCALAPPDATA%\Android\Sdk, or download commandlinetools-win-15859902_latest.zip, extract it to C:\Android\sdk\cmdline-tools\latest, set ANDROID_HOME and run sdkmanager.bat. Both need 64-bit Windows 10 or later on an x86_64 CPU; Windows on ARM is not supported.

Is there an Android SDK for Android phones?

No. Google ships Android Studio and the Android SDK for Windows, macOS, Linux and ChromeOS only, and the download page has no Android build. What runs on the phone is the Android OS; the SDK runs on your computer and talks to the phone over adb.

Do I need Java to use the Android SDK?

With Android Studio, no: it bundles the JetBrains Runtime. Without Studio, yes: install JDK 17 or newer, because the current command line tools and the Android Gradle plugin both need Java 17.