Android SDK Manager - Do you need to install all Android platforms?

I just recently downloaded the Android SDK.
Downloading all the packages in the "SDK Manager" will take way too much time. So I'm wondering whether I should deselect all the platforms except the latest one.
Do I need all the platforms or which ones do I need?


Solution 1:

Not at all. You just need to install those platforms which you are targeting for your apps and which you intend to test your app with. If I were you, I'd install:

  • API 24 (Multiple app windows, Notification enhancements, Multi-locale support)
  • API 23 (Runtime permissions toggling, Doze mode and BoringSSL)
  • API 21 (Massive changes, including Material Design)
  • API 19 (Many changes to various API methods)
  • API 18 (New features such as BLE, new API methods)
  • API 14 (Big overhaul - addressed several issues in Honeycomb)
  • API 11 (Quantum shift - native Fragments & Action Bar from API 11 onwards)
  • API 10 (Last of the "old" Android platforms - there are still people using this)

You should also install

  • SDK Tools 24.0.2
  • SDK Platform-tools 21
  • SDK Build-tools 21.1.2
  • Google Play Services SDK
  • Google USB Driver

Optional:

  • Offline documentation for each SDK Platform.
  • Platform source code - useful for a look under the covers.

Solution 2:

No, You don't need to install everything.

Install the "SDK Platform" for the Android versions you've set as minimum, target, and in-between the minimum & target.

Examples:

Target API 23, Minimum API 23

  • Only need to install SDK Platform for API 23

Target API 23, Minimum API 15

  • Need to install SDK Platforms for API 15 To 23

Extras

The Android SDK Extras are usually not required; but it is useful to be aware of them since they may be required depending on your use case.

Solution 3:

No, You don't need to download everything for every platform. You need to download only for those you are going to develop your application. E.g. If you are going to develop an application for Android 2.3.3 (API 10) then you only need to download for specific that platform only. You can choose to download support libraries from extra (If you need that).

EDIT
You also don't need to download all build tools. It's better if you use the latest one. For more queries on build-tools you can look at this questions:
What are the Android SDK build-tools, platform-tools and tools? And which version should be used?