0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Android 13应用迁移的两个阶段

谷歌开发者 来源:谷歌开发者 作者:谷歌开发者 2022-08-24 10:10 次阅读

随着 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。

80814cfe-22d3-11ed-ba43-dac502259ad0.png

△ 发布应用的兼容版本

针对新平台的功能和 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

80b29f5c-22d3-11ed-ba43-dac502259ad0.png

△ 开发者选项中的应用兼容性开关

6. 最终更新

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

7. 发布应用

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

80c1bd66-22d3-11ed-ba43-dac502259ad0.png

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

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

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

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3935

    浏览量

    127348
  • 接口
    +关注

    关注

    33

    文章

    8577

    浏览量

    151023
  • API
    API
    +关注

    关注

    2

    文章

    1499

    浏览量

    61966
  • AOSP
    +关注

    关注

    0

    文章

    16

    浏览量

    6195

原文标题:将应用迁移至 Android 13,在新平台完美绽放

文章出处:【微信号:Google_Developers,微信公众号:谷歌开发者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    云计算迁移的步骤与注意事项

    云计算迁移是一复杂且关键的过程,需要细致的规划和执行。以下是云计算迁移的一般步骤及注意事项: 一、云计算迁移的步骤 准备阶段 评估目标云环
    的头像 发表于 10-24 09:20 555次阅读

    单相电机两个绕组都在定子上吗

    单相电机的两个绕组,即起动线圈(或称为辅助绕组、副绕组)和运行线圈(或称为主绕组),都位于定子上 。这两个绕组在电机中起着关键作用,共同协作以产生旋转磁场,从而使电机能够运转。 单相电机通常由一
    的头像 发表于 09-03 15:10 734次阅读

    ad如何设置两个元器件的距离

    在Altium Designer(简称AD)中设置两个元器件之间的距离,主要是通过设置元器件间的安全间距(Clearance)规则来实现的。这个规则定义了元器件之间、元器件与走线之间以及其他设计元素
    的头像 发表于 09-02 15:31 6627次阅读

    功放机AB两个声道输出怎么接

    功放机AB两个声道输出的接线方式,主要取决于您想要实现的音频效果以及音箱的配置。以下将详细介绍几种常见的接线方式,以及它们各自的特点和适用场景。 一、基础接线方式 在大多数情况下,功放机的AB两个
    的头像 发表于 08-23 10:40 2635次阅读

    触发器的两个稳定状态分别是什么

    触发器作为数字电路中的基本逻辑单元,具有两个稳定状态,这两个状态通常用于表示二进制数码中的0和1。
    的头像 发表于 08-12 11:01 1051次阅读

    双稳态电路的两个稳定状态是什么

    双稳态电路是一种具有两个稳定状态的电子电路,广泛应用于数字电路、通信系统、存储器等领域。 双稳态电路的基本概念 双稳态电路是一种具有两个稳定状态的电路,即在没有外部输入信号的情况下,电路可以保持在
    的头像 发表于 08-11 15:00 1336次阅读

    双稳态触发器的两个基本性质是什么

    双稳态触发器(Bistable Trigger)是一种具有两个稳定状态的逻辑电路,广泛应用于数字电路设计中。它具有两个基本性质:记忆性和切换性。 一、双稳态触发器的基本概念 1.1 双稳态触发器
    的头像 发表于 08-11 10:08 666次阅读

    两个路由器ip地址冲突怎么解决

    两个路由器的IP地址发生冲突时,会导致网络连接不稳定或无法连接。以下是解决两个路由器IP地址冲突的步骤: 确定冲突的IP地址 首先,需要确定两个路由器的IP地址是否冲突。可以通过以下方法来检查
    的头像 发表于 07-09 11:35 5738次阅读

    两个PLC之间如何交互信号

    在工业自动化系统中,PLC(Programmable Logic Controller,可编程逻辑控制器)是核心的控制设备。在许多复杂的应用场景中,需要两个或多个PLC之间进行信号交互,以实现更高
    的头像 发表于 06-14 16:57 4276次阅读

    请问ad9171的两个输出端口是否支持同时输出两个不同的频率?

    你好,关于AD9171芯片我有一问题 ,数据手册显示该芯片具有两个输出通道,芯片内部有DAC0和DAC1共两个DAC通道,那么这两个通道是否支持同时输出
    发表于 05-28 06:20

    两个铜片可以形成原电池吗

    两个铜片本身不能形成原电池,因为原电池的工作原理依赖于两个不同电位的电极材料之间的氧化还原反应。
    的头像 发表于 05-21 16:23 944次阅读

    原电池中的两个电极能是相同的吗?

    在原电池的设计和运作中,两个电极是否可以相同,这取决于电池的类型和所需的电化学反应。
    的头像 发表于 04-26 17:32 2245次阅读

    arcgis中如何关联两个属性表

    在ArcGIS中,关联两个属性表是一重要的操作,可以通过此操作将两个表中的数据关联起来,以便进行分析和查询。下面是详细介绍如何在ArcGIS中实现属性表的关联。 首先,我们需要明确两个
    的头像 发表于 02-25 11:01 4191次阅读

    两个电位器地控制一变频器,如何接线?

    两个电位器地控制一变频器,如何接线? 接线方式如下: 1. 首先,明确需要使用的电器设备。在这个场景中,我们需要两个电位器(即可变电阻器)和一
    的头像 发表于 02-05 10:13 5231次阅读

    两个机器的时钟怎么同步?

    两个机器的时钟怎么同步? 在现代社会中,时间同步对于各种科学研究、工业生产和通信技术都具有重要意义。在许多应用程序中,如分布式系统、计算机网络和数据同步等领域,为了确保数据的一致性和准确性,需要确保
    的头像 发表于 01-16 14:26 1624次阅读