This document contains answers to general questions about Android compatibility.
What types of devices can be Android-compatible?
Android software can be ported to many different devices, including some on which third-party apps don't run properly. The Android Compatibility Definition Document (CDD) spells out the specific device configurations that are considered compatible.
For example, though the Android source code could be ported to run on a phone that doesn't have a camera, the CDD requires all phones to have a camera. This allows developers to rely on a consistent set of capabilities when writing their apps.
The CDD continues to evolve to reflect market realities. For example, version 1.6 of the CDD supports only cell phones. But version 2.1 allows devices to omit telephony hardware, enabling non-phone devices such as tablet-style music players to be compatible. As Google makes these changes, Google also augments Google Play to allow developers to retain control over where their apps are available. To continue the telephony example, an app that manages SMS text messages isn't useful on a media player, so Google Play allows the developer to restrict that app exclusively to phone devices.
If my device is compatible, does it automatically have access to Google Play and branding?
No. Access isn't automatic. Google Play is a service operated by Google. Achieving compatibility is a prerequisite for obtaining access to the Google Play software and branding. After a device is qualified as an Android-compatible device, you should complete the contact form included in licensing Google Mobile Services to seek access to Google Play.
Is compatibility mandatory?
No. The Android Compatibility Program is optional. The Android source code is open, so anyone can use it to build any kind of device. However, if you want to use the Android name with your product, or want access to Google Play, you must first ensure that your device is compatible.
How much does compatibility certification cost?
There's no cost to obtain Android compatibility for a device. The Compatibility Test Suite is open source and available to anyone for device testing.
Who determines the compatibility definition?
Google is responsible for the overall direction of Android as a platform and product, so Google maintains the Compatibility Definition Document (CDD) for each release. Google drafts the CDD for a new Android version in consultation with various OEMs who provide input.
How long is each Android version be supported for new devices?
Android's code is open source, so Google can't prevent someone from using any version to launch a device. Instead, Google chooses not to license the Google Play client software for use on obsolete versions. This allows anyone to continue to ship obsolete versions of Android, but those devices can't use the Android name and exist outside of the Android apps ecosystem, just as if they weren't compatible.
Can a device have a different user interface and still be compatible?
The Android Compatibility Program determines whether a device can run third-party apps. The user interface components shipped with a device (such as home screen, dialer, and color scheme) don't generally have much effect on third-party apps. As such, device builders are free to customize the user interface. The Compatibility Definition Document restricts the degree to which OEMs are permitted to alter the system user interface for areas that impact third-party apps.
When are compatibility definitions released for new Android versions?
Google's goal is to release a new version of the Android Compatibility Definition Document (CDD) when the corresponding Android platform version has converged enough to permit it. While Google can't release a final draft of a CDD for an Android software version before the first flagship device ships with that software, final CDDs are always released after the first device. However, wherever practical Google releases draft versions of CDDs.
How are device manufacturers' compatibility claims validated?
There is no validation process for Android-powered device compatibility. However, if the device is to include Google Play, Google typically validates the device for compatibility before agreeing to license the Google Play client software.
What happens if a device that claims compatibility is later found to have compatibility problems?
Typically, Google's asks you to release updated system images that fix any compatibility problems.