Understanding SDK Manager

Android Software Development Kit (SDK) is required to build any application for Android. It is the skeleton for any Android development. It contains dozens of support tools, platform details, APIs, libraries, system images, emulator and more.

To open SDK Manager from the Android Studio’s welcome screen, click Configure > SDK Manager from the right bottom menu as shown in image below:
Welcome screen - Configure > SDK Manager

To open the SDK Manager from inside the Android Studio, click the SDK Manager SDK Button on Toolbar button on Toolbar or choose Tools > Android > SDK Manager from the main menu.

SDK Manager

Android Studio usually has the right set up of packages checked and installed already for you. The packages mentioned below are required for a successful app development:

  • SDK Platforms tab
    • Android SDK Platform
      At least one platform is required for successful apps compilation.

    • System Images
      Required in order to run Android Emulator.

  • SDK Tools tab
    • Android SDK Build-Tools
      Required for building Android apps.

    • Android SDK Platform-Tools
      Includes various required tools for SDK Platforms.

    • Android SDK Tools
      Includes required tools for development and debugging.

    • Android Emulator
      Required to debug and test your applications.

SDK Platforms

The SDK Platforms tab lists the versions of Android that you can compile against. The latest version of Android is usually installed when you set up Android Studio initially. It is recommended to use the latest platform version as your build target in order to use new Android features. To see details, click on Show Package Details option in the bottom right of window. You’ll see that each package contains:

At least one platform is required in your environment so you're able to compile your application.

Android SDK Platform
There’s one SDK Platform available for each version of Android. It includes an android.jar file with a fully compliant Android library. In order to build an Android app, you must specify an SDK platform as your build target.

Sources for Android
A copy of the Android platform source code that’s useful for stepping through the code while debugging your app.

System Images
A system image is required in order to run the Android Emulator. A system image is a copy of one version of the Android operating system. Each platform version contains the supported system images. You can also download system images later when creating Android Virtual Devices (AVDs) in the AVD Manager.

Which System Image should I select?

Its depends on two things:

  1. What is your development machine’s CPU architecture:
    Select Intel x86 Atom or Intel x86 Atom_64 for Intel based CPUs.
  2. What kind of device are you building for? (TV, Wear or Phone)
    If you are developing for a specific device i.e. watch then select the Wear image. You don’t need to select image of TV or Wear if you are only developing for phone or tablet.

What is Google Play Intel x86 Atom System Image

The play image has the Google Play store already installed and you can install apps, but there is no root access as it is a production build and not a debug build.

SDK Tools

When you click on the SDK Tools tab, make sure the following items are selected:

  • Android SDK Build-Tools
  • Android Emulator
    The Android Emulator simulates various Android phone, tablet, Android Wear, and Android TV devices on your computer. It comes with predefined configurations for popular device types.
  • Android SDK Platform-Tools
  • Android SDK Tools
  • Documentation for Android SDK (offline copy of documentation)
  • Google USB Driver
    Select if you want to perform ADB debugging with any of the Google devices. (Note: for other devices, Windows download and install these drivers automatically. For some devices you’ve to visit the device manufacturer’s website to obtain and install these drivers.)
  • Instant Apps Development SDK
    Android Instant Apps supports the latest Android devices from Android 5.0 (API level 21), Android Studio provides the tools you need to modularize your app so that users load only the portion of the instant app that they need, when they need it.
  • Intel X86 Emulator Accelerator (HAXM installer)
    Select if Android Studio is installed on Intel based machine
  • NDK (if you plan to include C or C++ code )
  • Support Repository (make sure to select all sub-list items)

SDK Tools

SDK Update Sites

SDK Update Sites Tab

Do not change anything in the SDK Update Sites tab. Keep the update sites as it was configured by default. Click on OK button. It will take some time to download and install all the components and packages selected.

Updating SDK Manager

The SDK Manager automatically scans for updates to existing packages and will list new packages. When an update is available for a package you already have, a dash appears in the check box next to the package. See below image, the "Google APIs Intel x86 Atom System Image" inside the "Android 8.0(O)" platform has update available.

SDK Manager

A download icon will appear on left column as pending update sign when you check a package for download. Uncheck a package if you want to remove it, a red cross will appear on left column as pending removal sign.

See above image, "Sources for Android 26" inside the "Android 8.0(O)" platform has pending update status and "Google APIs Intel x86 Atom System Image" inside the "Android 7.1.1 (Nougat)" platform has pending delete status visible.

Click OK to apply changes