做者 / Android 产品经理 Diana Wonghtml
在往期 #11WeeksOfAndroid 系列文章中咱们介绍了 联系人和身份 、 隐私和安全 ,本期将聚焦 Android 11 兼容性 。咱们将为你们陆续带来 #11WeeksOfAndroid 内容,深刻探讨 Android 的各个关键技术点,您不会错过任何重要内容。android
本期咱们将重点探讨 Android 11 兼容性这一对全部开发者都很是重要的主题。对于 Android, 应用兼容性 一词指应用能够在特定版本的 Android (一般是最新版本) 上正常运行。segmentfault
您能够前往官方网站详细获取可帮助您进行兼容性测试的资源,以及本期全部关于该领域的实用内容和资源!安全
在每次版本更新中,咱们都但愿尽可能减小应用适配 Android 所需的工做。在 Android 11 中,咱们添加了新的流程、开发者工具和版本发布里程碑,以帮助咱们最大程度地减小平台更新带来的影响,更轻松实现应用的兼容性。框架
请继续阅读,详细了解咱们如何简化 Android 11 中的应用测试和调试流程。ide
测试应用是否兼容 Android 新版本可能面临不少挑战,尤为是应用在受到多个平台变动影响的状况下。此过程当中可能会出现不少问题:工具
开发者社区为咱们提供了大量相关问题的优质反馈。在 Android 11 中,咱们为平台添加了如下新工具,并在 Android Studio 中添加了新功能,所以您能够更加轻松的进行测试。性能
和往年的更新同样,Android 11 的一些平台变动可能会影响您的应用。尽管这些变动对于提高平台性能相当重要,但咱们会尽量将这些变动安排在平台的最新 targetSDKVersion 以后,以便减小对您的应用的直接改动。在 Android 11 中,咱们还会将更多此类平台变动添加到新的 兼容性框架中。测试
您可使用全新开发者工具,针对包含在兼容性框架内的变动对应用进行测试和调试。网站
例如,咱们已将包含在兼容性框架内的变动设为可切换,您能够经过设备的开发者选项或使用 Android ADB 强制启用或停用单个变动。Android 平台会自动调整内部 API 逻辑,所以您无需更改 targetSDKVersion 或从新编译应用,便可执行基本测试。此外,您能够隔离各项变动,从而节省发现和调试应用中问题所需的时间。
在切换变动的启用/停用状态以前,您应该通读 行为变动列表,肯定哪些变动可能会影响您的应用。包含在兼容性框架内的变动已在变动描述前列出相应的 Change ID 和 Change Name。
通常来讲,咱们建议您从 影响全部应用的行为变动 开始测试,由于不管 targetSDKVersion 如何,这些变动均可能对您的应用形成影响。咱们用下面这个 targetSDKVersion 控制的变动为例,说明您能够如何在不使用其余 targetSDK 重编译应用的状况下,对这些变动进行测试。
在 后台位置访问变动 中,请求始终在后台访问位置的应用会受影响。若是您的应用受到这一变动的影响,那么从该变动开始测试是不错的选择。此变动的名称为 BACKGROUND_RATIONALE_CHANGE_ID,变动 ID 为 147316723。您须要先使用这些信息启用此变动,而后再测试应用所以受到的影响。
肯定要测试的变动后,您可使用开发者选项切换此变动的启用/停用状态。如要使用开发者选项,请打开设备上的 "设置" 应用,导航至 系统 > 高级 > 开发者选项 > 应用兼容性变动 。
开发者选项中可切换的平台变动,后台位置访问变动已启用
在本例中,BACKGROUND_RATIONALE_CHANGE_ID 是惟一已启用的变动,旨在最大程度缩小应用可能遇到的各类问题的缘由范围。
您也可使用 Logcat 或 ADB 识别已启用的变动,或 使用 ADB 切换变动的启用/停用状态。请注意,您只能在使用可调试应用时切换变动。
启用变动后,您可使用经常使用的测试工做流来测试和调试应用。如遇到问题,请查看日志,肯定问题的缘由。若是不肯定问题是否由已启用的平台变动引发,您能够尝试停用此变动,而后从新测试应用的同一模块。
如需了解其余相关示例,您能够观看有关 测试 Android 11 中平台变动的视频,或阅读 官方文档。
除了在新平台上手动进行测试外,咱们还简化了使用 Android Studio 在最新 Android 系统上运行自动化测试的流程。
从 Android Studio 4.2 开始,咱们实现了在多个实体或虚拟设备上并行运行插桩测试 (instrumentation tests)。如今,您能够在运行测试的过程当中,从目标设备下拉菜单中选择 多个设备 。
此功能旨在帮助您在开发周期中尽早发现问题,并让您可以比较不一样 Android 设备之间的差别。您可使用 视图 > 工具窗口 > 运行 下的新 测试矩阵 ,研究这些测试的结果。
新测试矩阵可按状态、设备和 API 级别过滤测试结果。
请观看有关 使用 Android Studio 测试应用兼容性的视频,或阅读 官方文档。
咱们建议您尝试这些新工具,并 向咱们发送反馈,告诉咱们这些工具对您是否有用。咱们但愿这些工具能帮助您更轻松地测试 Android 11 应用兼容状况。