Android Compatibility

Android's purpose is to establish an open platform for developers to build innovative apps.

  • The Android Compatibility program defines technical details of the Android platform and provides tools for OEMs to ensure developer applications run on a variety of devices.
  • The Android SDK provides built-in tools for developers to clearly state the device features required by their applications.
  • Google Play shows applications only to those devices that can properly run those applications.

Why build compatible Android devices?

Users want customizable devices

Compatibility ecosystem

Figure 1. The Android ecosystem thrives with device compatibility

A mobile phone is a highly personal, always-on, always-present gateway to the Internet. We haven't met a user yet who didn't want to customize it by extending its functionality. That's why Android was designed as a robust platform for running aftermarket applications.

Developers outnumber us all

No device manufacturer can write all the software a user could conceivably need. We need third-party developers to write the apps users want, so the Android Open Source Project (AOSP) aims to make application development as easy and open as possible.

Everyone needs a common ecosystem

Every line of code developers write to work around a bug is a line of code that didn't add a new feature. The more compatible mobile devices are, the more applications we'll have to run on those devices. By building a fully compatible Android device, you benefit from the huge pool of apps written for Android while increasing the incentive for developers to build more apps.

Android compatibility is free, and it's easy

To build an Android-compatible mobile device, follow this three-step process:

  1. Obtain the Android software source code. This is the source code for the Android platform that you port to your hardware.
  2. Comply with the Android Compatibility Definition Document (CDD) (PDF, HTML). The CDD enumerates the software and hardware requirements of a compatible Android device.
  3. Pass the Compatibility Test Suite (CTS). Use the CTS as an ongoing aid to evaluate compatibility during the development process.

After complying with the CDD and passing the CTS, your device is Android compatible, meaning Android apps in the ecosystem provide a consistent experience when running on your device. For details about the Android compatibility program, see the program overview.

Licensing Google Mobile Services (GMS)

After building an Android compatible device, consider licensing Google Mobile Services (GMS), Google’s proprietary suite of apps (Google Play, YouTube, Google Maps, Gmail, and more ) that run on top of Android. GMS is not part of the Android Open Source Project and is available only through a license with Google. For information on how to request a GMS license, see Contact Us.