Android 的目的是为开发者建立一个开放的平台来构建创新的应用程序。
- Android 兼容性计划定义了 Android 平台的技术细节,并为 OEM 提供了工具,以确保开发人员的应用程序可以在各种设备上运行。
- Android SDK 为开发人员提供了内置工具,可以清楚地说明其应用程序所需的设备功能。
- 应用程序分发系统(如 Google Play)过滤应用程序,使用户只能看到与其设备兼容的应用程序。
为什么要构建兼容的 Android 设备?
用户需要可定制的设备

图 1. Android 生态系统因设备兼容性而蓬勃发展
手机是一个高度个人化的、永远在线的、永远存在的互联网网关。我们还没有遇到过不想通过扩展其功能来自定义它的用户。这就是为什么 Android 被设计为运行售后市场应用程序的强大平台。
开发人员的数量超过了我们所有人
没有设备制造商可以编写用户可能需要的所有软件。我们需要第三方开发人员来编写用户想要的应用程序,因此 Android 开源项目 (AOSP) 旨在使应用程序开发尽可能简单和开放。
每个人都需要一个共同的生态系统
开发人员为解决错误而编写的每一行代码都是一行没有添加新功能的代码。兼容的移动设备越多,我们必须在这些设备上运行的应用程序就越多。通过构建完全兼容的 Android 设备,您可以从为 Android 编写的大量应用程序中受益,同时增加开发人员构建更多应用程序的动力。
计划目标
Android 兼容性计划旨在造福于整个 Android 社区,包括用户、开发人员和设备制造商。
每个组都依赖于其他组。用户需要广泛的设备选择和出色的应用程序;优秀的应用程序来自开发者,他们的应用程序拥有庞大的市场,用户拥有许多设备;设备制造商依靠各种出色的应用程序来增加其产品对消费者的价值。
我们的目标旨在使这些群体受益:
为应用程序开发人员提供一致的应用程序和硬件环境。如果没有强大的兼容性标准,设备可能会有很大差异,以至于开发人员必须为不同的设备设计不同版本的应用程序。兼容性计划提供了开发人员在 API 和功能方面对兼容设备的期望的精确定义。开发人员可以使用这些信息做出良好的设计决策,并确信他们的应用程序将在任何兼容设备上运行良好。
为消费者提供一致的应用体验。如果应用程序在一台兼容的 Android 设备上运行良好,那么它应该在与同一 Android 平台版本兼容的任何其他设备上运行良好。 Android 设备在硬件和软件能力上会有所不同,因此兼容性程序还提供了 Google Play 等分发系统实现适当过滤所需的工具。这意味着用户只能看到他们可以实际运行的应用程序。
使设备制造商能够在兼容的同时实现差异化。 Android 兼容性计划侧重于与运行第三方应用程序相关的 Android 方面,这使设备制造商能够灵活地创建仍然兼容的独特设备。
最大限度地降低与兼容性相关的成本和开销。确保兼容性对设备制造商来说应该是容易且便宜的。该测试工具是免费的、开源的,可供下载。它旨在用于设备开发过程中的持续自我测试,以消除更改工作流程或将设备发送给第三方进行测试的成本。同时,没有必要的认证,因此没有相应的成本和费用。
程序组件
Android 兼容性计划由三个关键组件组成:
- Android 开源项目源代码
- 兼容性定义文档 (CDD) ,代表兼容性的“策略”方面
- 兼容性测试套件(CTS) ,代表兼容性的“机制”
Android兼容性是免费的,而且很容易
要构建与 Android 兼容的移动设备,请遵循以下三个步骤:
- 获取安卓软件源代码。这是您移植到硬件的 Android 平台的源代码。
- 遵守 Android 兼容性定义文档 (CDD) ( PDF 、 HTML )。 CDD 列举了兼容 Android 设备的软件和硬件要求。
- 通过兼容性测试套件 (CTS) 。在开发过程中使用 CTS 作为评估兼容性的持续辅助工具。
遵守 CDD 并通过 CTS 后,您的设备与 Android 兼容,这意味着生态系统中的 Android 应用程序在您的设备上运行时提供一致的体验。
正如 Android 平台的每个版本都存在于源代码树中的单独分支中一样,每个版本也有单独的 CTS 和 CDD。 CDD、CTS 和源代码——连同你的硬件和软件定制——是创建兼容设备所需的一切。
许可 Google 移动服务 (GMS)
构建兼容 Android 的设备后,请考虑授权 Google 移动服务 (GMS),这是在 Android 上运行的 Google 专有应用套件(Google Play、YouTube、Google 地图、Gmail 等)。 GMS 不是 Android 开源项目的一部分,只能通过 Google 的许可使用。有关如何申请 GMS 许可证的信息,请参阅我们的联系/社区页面。