查看原文
其他

将应用迁移至 Android 13,在新平台完美绽放

Android Android 开发者 2022-10-12

随着 Android 13 正式发布至 AOSP,用户们会开始使用这个新的平台,并会在新平台上体验您的应用。确保应用在新平台上拥有完美的表现十分重要,本文旨在带您了解应用迁移中涉及到的工作,以及高质量地完成迁移所需的资源。


典型的应用迁移包括两个阶段:

  • 确保应用与 Android 13 兼容
  • 针对新平台的功能和 API 调整应用


确保与 Android 13 兼容



这一阶段的目的是通过测试确保您的应用在 Android 13 中的兼容性,从而让更新到最新版 Android 的用户获得良好的使用体验。


您通常可以根据兼容性测试结果调整应用并发布更新,无需更改应用的 targetSdkVersion。同样,您应该也不需要使用新的 API 或更改应用的 compileSdkVersion,但这一点可能会取决于应用的构建方式及其所使用的平台功能。


具体来说,这一阶段又分为以下 5 步:


1. 获取 Android 13
只需在运行 Android 13 的设备上安装您的应用,即可开始测试其兼容性:
https://developer.android.google.cn/about/versions/13/get


2. 查看变更
请通过 Android 13 行为变更清单 (针对所有应用) 来确定可能会影响到应用的变更:
https://developer.android.google.cn/about/versions/13/behavior-changes-all


3. 执行测试
在设备或模拟器上测试应用,请测试应用的所有流程,找出功能或用户界面中暴露的问题。此外,请务必查看并测试受限非 SDK 接口的使用。您应使用公共 SDK 或 NDK 等效项替换应用中使用的任何受限接口。留意突出显示这些访问权限的 logcat 警告,并使用 StrictMode 方法 detectNonSdkApiUsage() 以编程方式捕获它们。

  • detectNonSdkApiUsage()
    https://developer.android.google.cn/reference/android/os/StrictMode.VmPolicy.Builder#detectNonSdkApiUsage()

别忘了测试应用中的开发库和 SDK 的兼容性。如果您在测试中发现 SDK 存在问题,请尝试更新 SDK 到最新版本,或向其开发者寻求帮助。


您可以参阅核心应用质量指南测试最佳做法以确保测试质量。


  • 核心应用质量指南
    https://developer.android.google.cn/develop/quality-guidelines/core-app-quality
  • 测试最佳做法
    https://developer.android.google.cn/training/testing


4. 更新应用
以适应行为变更或解决问题为目标,只进行必要的代码更改即可。请使用应用最初面向的目标 API 级别重新编译,无需以 Android 13 为目标平台。


5. 发布应用
注册、上传并发布更新的 Android App Bundle 或 APK。
△ 发布应用的兼容版本


针对新平台的功能和 API 调整应用



这一阶段的目的是利用 Android 13 的新 API 和功能来添加对 Android 13 的全面支持。您可以在这时更新 targetSdkVersion,也请注意以 Android 13 为目标平台时的 Google Play 政策要求:
https://developer.android.google.cn/distribute/play-policies


这一阶段的具体步骤如下:

1. 获取 Android 13 SDK
请参阅 SDK 设置指南获取并设置 Android 13 SDK,并更新应用的 targetSdkVersion 和 compileSdkVersion,然后重新编译应用:
https://developer.android.google.cn/about/versions/13/setup-sdk

2. 查看行为变更
因为有些行为变更仅在您的应用以新平台为目标平台时才适用,请根据行为变更清单 (针对面向 Android 13 的应用) 来确定测试重点,同样也请完整测试应用流程和功能:

https://developer.android.google.cn/about/versions/13/behavior-changes-13


3. 检查隐私权变更

进行所需的代码和架构更改,以支持 Android 13 的用户隐私权变更:
https://developer.android.google.cn/about/versions/13/behavior-changes-13#privacy


4. 实现 Android 13 功能
利用 Android 13 API,为您的应用引入新功能:

https://developer.android.google.cn/about/versions/13/features


开发完成后,请以 Android 13 为目标平台重新编译应用。


5. 测试应用

和上一个阶段一样,请测试应用的所有流程。这次请将重点放在以 Android 13 为目标平台的应用的行为变更上:
https://developer.android.google.cn/about/versions/13/behavior-changes-13


Android 13 提供了兼容性切换开关,可让您更轻松地在应用中针对性地测试行为变更。如需了解详情,请参阅兼容性框架变更 (Android 13):
https://developer.android.google.cn/about/versions/13/reference/compat-framework-changes
△ 开发者选项中的应用兼容性开关


6. 最终更新

如果前几步工作发生在最终版 Android 13 API 发布之前,则请在终版 API 发布后,再次更新 targetSdkVersion 和其他 build 配置,并进行其他所需的更新,以及测试您的应用。


7. 发布应用

注册、上传并发布更新的 Android App Bundle 或 APK。

△ 针对 Android 13 的新功能和 API 调整应用

以上两个阶段可以依次进行,也可以根据您应用的实际情况同时推进。欢迎您前往 Android 13 开发者网站阅读完整迁移指南:
https://developer.android.google.cn/about/versions/13/migration


我们期待着您的应用在 Android 13 上大放光彩,也期待着这个新的平台能为您的创意提供进一步的助力,去帮助您为更多的用户创造出更难忘的体验!


您可以通过下方二维码或在文章底部私信,向我们提交反馈,分享您喜欢的内容、发现的问题。您的反馈对我们非常重要,感谢您的支持!




推荐阅读

如页面未加载,请刷新重试

 点击屏末 | 阅读原文 | 进一步了解 Android 13 更新详情




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存