将应用迁移到 Android 10

欢迎!Android 10 包含许多用于构建新体验的新 API,以及一些更新后的系统行为,它们会影响应用在 Android 10 设备上运行时。

首先,我们建议您查看系统行为变更隐私权变更以及新功能和 API,然后在以下两个阶段迁移您的应用:

  1. 确保基本兼容性。请尽快确保您已经发布的现有应用可供更新或购买搭载 Android 10 的新设备的用户使用。测试您的应用,验证其是否完全正常运行,然后向用户发布该应用的兼容版本。
  2. 利用 Android 10 功能和 API 构建应用。接下来,探索 Android 10 中的新功能和 API。设置开发环境,更改应用的 targetSdkVersion,并使用与您的应用相关的新 API 进行构建。

下面几部分将重点介绍您在每个阶段需要执行的操作。在开始之前,请确保您已准备好硬件设备或模拟器来运行和测试您的应用。

第 1 阶段:基本兼容性

这一阶段的目标是,识别应用在 Android 10 上运行时出现的功能回归问题或其他影响,然后解决这些问题并向用户发布更新版本。在许多情况下,您不需要更改应用的 targetSdkVersion 或使用新 API,但您可以选择更改 compileSdkVersion 以支持兼容性。

请务必通过所有流程测试现有应用的功能,因为某些平台变更可能会影响应用的行为方式。在发布应用的兼容版本时,我们建议您在更新说明中向用户表明该应用支持 Android 10。

为了让用户顺利过渡到 Android 10,我们建议您尽早发布应用的兼容版本,最好是在设备开始接收 Android 10 更新之前。

执行测试

兼容性测试也包含您在准备发布应用时执行的同一类型的测试。这时有必要查阅核心应用质量指南测试最佳实践

请务必熟悉可能会影响您的应用的已知行为变更。即使您未更改 targetSdkVersion这些行为变更也会应用于您的应用。提前查看变更将有助于您更快地确定可能产生影响的领域并调试所有问题。

Android 10 包含针对隐私权的大量变更,因此您还必须查看重要的隐私权变更并了解可能会对您的应用产生的影响。

第 2 阶段:利用 Android 10 编译

准备就绪后,您就可以探索 Android 10 中的新功能和 API,并通过新体验增强您的应用。如需开始使用新 API 进行开发,您需要在 Android Studio 中设置 Android 10 (API 29) SDK,并将 targetSdkVersioncompileSdkVersion 更改为 29

更改 targetSdkVersion 时,如果以 Android 10 (API 29) 或更高版本为目标平台,您还需要考虑您的应用将发生的系统行为变更

某些行为变更可能会导致回归或崩溃,因此在发布会更改 targetSdkVersion 的应用更新之前,请务必查看这些变更并进行全面测试。

获取 SDK

如需获取 SDK 软件包以便利用 Android 10 构建应用,请首先确保您使用的是最新版 Android Studio。如需了解详情,请参阅设置 SDK

执行测试

完成上述准备工作后,您就可以构建应用,然后进一步测试它,以确保它在以 Android 10 为目标平台时能够正常运行。这时有必要再次查阅核心应用质量指南测试最佳实践

如果您在构建应用时将 targetSdkVersion 设置为 29,应该注意特定的平台变化。即使您尚未使用新的 API,Android 10 行为变更页面上所述的一些变更也可能会严重影响应用的行为或导致崩溃。