随着 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 上大放光彩,也期待着这个新的平台能为您的创意提供进一步的助力,去帮助您为更多的用户创造出更难忘的体验!
深开鸿王成录出席深圳哈工大计算机学部校友会主办的“开源软件与信创科技”论坛
区块链技术将改变防御网络安全的现状
电阻如何看色环读数?终端电阻的开发与应用
如何设置虚拟局域网_虚拟局域网的划分方式
三星8nm LPP工艺利用 Mentor Tessent 工具节省大量设计测试时间
Android 13应用迁移的两个阶段
Nvidia GTC2019:没有新架构,但黄仁勋打造了一个巨大的生态圈
区块链技术运用开发加密货币场外OTC交易所搭建
Zynq UltraScale+ MPSoC以太网接口调试
AMD 将要推出Radeon RX Vega系列GPU 大幅度提升 VR 与 PC 图形
Arduino中进行I2C通信发送数据案例分析
是不是特别后悔不该买16G的手机?内存总不够?跟我学会这几招,手机内存用不完
FTU系统控制板共模浪涌(SURGE)干扰案例分析
小米机器狗有什么用
万物互联的IoT时代,柔性电子的未来将会如何发展
中核集团创建智慧食堂,践行厉行节约风尚,落实双碳行动
基于摄像机的先进驾驶辅助系统
质量流量计在煤焦化应用技巧:ST98流量元件现场安装定位
中国物联网产业发展关键年2010年
Protel文件如何用CAM Manager制作BOM