Android 中的应用兼容性

对于 Android 而言,“应用兼容性”一词是指您的应用可在特定平台版本(通常是最新版本)上正常运行。每次发布新版本时,我们都会推出一些基本变更来提升隐私保护和安全性,并实施一些变更来改善整个操作系统中的总体用户体验。有时,这些变更可能会影响您的应用,因此请务必查看每个发布版本中包含的行为变更,针对这些变更测试应用并向用户发布兼容性更新。

为什么应用兼容性很重要

无论用户是购买了新设备还是在当前设备上安装了更新,只要他们更新到最新 Android 版本,就会立即受到应用兼容性的影响。他们会迫不及待地想要挖掘最新 Android 版本的功能,并且希望在该版本上使用他们喜爱的应用。如果这些应用无法正常运行,则会给用户和您带来严重问题。

平台行为变更的类型

在新的平台版本上运行时,您的应用可能会受到两种不同类型的变更的影响:

针对所有应用的变更

这些变更会影响在相应 Android 版本上运行的所有应用,无论应用的 targetSdkVersion 为何。

您应该在每个新 Android 版本的开发者预览版和 Beta 版阶段主动测试应用与这些变更的兼容性。在新的 Android 版本达到最终版本(面向 Android 开源项目 [AOSP] 发布)后,Pixel 和其他设备的更新即会开始,因此,如果您主动针对这些变更进行测试,将有助于确保用户能够在这些设备上无缝过渡到最新的 Android 版本。

针对性变更

这些变更只会影响以相应 Android 版本为目标平台的应用。

对于这些变更,您应该在准备以最新稳定版 API(目前为 Android 11 [API 级别 30])为目标平台时执行兼容性测试。即使您不打算立即以新的 Android 版本为目标平台,处理这些变更也可能需要进行大量开发工作,因此您应该尽早了解这些变更(最好是在每个新 Android 版本的开发者预览版和 Beta 版阶段,以便您进行初步测试并提供反馈)。

兼容性框架工具

为了帮助您测试兼容性,我们在兼容性框架中针对每个版本纳入了尽可能多的重大更改。将变更纳入到兼容性框架中会使其变得可切换状态,从而使您能够通过开发者选项或 adb 单独强制启用或停用各项变更。使用兼容性框架时,您无需更改应用的 targetSdkVersion 或重新编译应用来执行基本测试。

如需了解详情,请参阅测试和调试应用中的平台行为变更

针对非 SDK 接口的限制

我们一直在努力让开发者逐步停止使用非 SDK API,因此,我们会在每个 Android 版本中更新受限非 SDK 接口的列表。与往常一样,欢迎您随时提供对公共 API 等效项的请求和反馈。

平台版本

详细了解最新 Android 版本: