谷歌 Android Studio Bumblebee (2021.1.1) 稳定版正式发布:通过 Wi-Fi 使用 ADB,适配苹果 M1 Mac(附更新内容大全)
IT之家 2 月 24 日消息,谷歌今天宣布 Android Studio Bumblebee (2021.1.1) 稳定版正式发布。
Android Studio 团队一直忙于 Android Studio Bumblebee (2021.1.1) 🐝 和 Android Gradle 插件 (AGP) 7.1.0 的稳定版,即最新版 Android 官方 IDE 和构建系统的相关工作。谷歌已针对众多典型开发工作流中涉及的功能进行了改进: 包括构建和部署、分析和检查,以及设计。
一些值得注意的新增功能包括: Android Studio 和你的持续集成 (CI) 服务器之间的统一测试作业 ✅、便捷的配对流程 (通过 Wi-Fi 即可连接 ADB📲)、经过改进的性能剖析工具以帮助你识别和分析应用中的卡顿 🕵️,以及无需将应用部署到设备即可预览动画 🎥 和界面互动。
http://developer.android.google.cn/studio
Android Studio Bumblebee (2021.1.1) 的新增功能
以下是按三大主题整理的 Android Studio Bumblebee (2021.1.1) 新增功能完整清单。
构建和部署
全新的设备管理器 (Device Manager) - 你可使用 Bumblebee 的这个新工具窗口更轻松地查看和管理虚拟和实体测试设备。只需通过主菜单选择视图 (View) > 工具窗口 (Tool Windows) > 设备管理器 (Device Manager) 即可使用。你可在虚拟 (Virtual) 标签页中创建新设备、查看设备详细信息、删除设备或执行你过去在 AVD 管理器 (AVD Manager,现已删除) 中执行的任何其他操作。你可在实体 (Physical) 标签页中,使用 ADB Wi-Fi 快速与新设备配对,并一目了然地查看每个实体设备的详细信息,或使用设备文件浏览器 (Device File Explorer),轻轻一点,快速检查每个设备的文件系统。请前往版本说明详细了解全新的设备管理器:
https://developer.android.google.cn/studio/releases#new-device-manager
△ 设备管理器 (Device Manager)
通过 Wi-Fi 使用 ADB - Bumblebee 提供了一个简化的流程,可通过 Wi-Fi 连接 Android 11 及更高版本的设备,以便使用 ADB 进行部署和调试。当你在设备上启用通过 Wi-Fi 进行调试后,在新的设备管理器 (Device Manager) 的实体 (Physical) 标签页中选择使用 Wi-Fi 配对 (Pair using Wi-Fi) 以打开配对向导。然后按照提示给出的步骤即可与连接到同一网络的设备进行配对。请阅读官方文档了解详情:
https://developer.android.google.cn/studio/command-line/adb#wireless-adb-android-11
通过 Wi-Fi 连接到设备 (Android 11 及更高版本)
https://developer.android.google.cn/studio/command-line/adb#connect-to-a-device-over-wi-fi-android-11+
△ 通过 Wi-Fi 使用 ADB 配对设备
使用 Gradle 在 Android Studio 中运行插桩测试 - 你是否曾经历过在 Android Studio 和 CI 上运行相同测试,所得结果却不同?这个问题不仅让人失望,还会导致生产力下降。为了解决这个问题,谷歌在 Android Gradle 插件 (AGP) 7.1.0 中引入了一个新的测试运行器,默认情况下 Android Studio Bumblebee 在运行插桩测试时都将使用此运行器,因此你的所有测试都借助统一的测试运行器运行。谷歌在 Android Studio Arctic Fox 中提供过类似的改进措施,即在默认情况下通过 Gradle 运行所有单元测试。同样,此改进也不需要你更改编写或运行测试的方式!
测试应用
https://developer.android.google.cn/studio/test#bumblebee-unified-test-runner
△ 使用不同的运行器导致结果有异
△ Android Studio 现在通过 Gradle 运行插桩测试
Android Gradle 插件升级助手现在可更新 API 使用情况 - AGP 升级助手最初在 Android Studio 4.2 中推出,可以帮助用户将其项目更新到最新版本,Arctic Fox 中更新的升级助手会提供一个新的界面,用户可以借此查看和选择升级版本和步骤。在 Bumblebee 中,升级助手现在还会检查并提供更新 DSL 选项,从而帮助你避免使用已弃用但尚未删除的 API。如需了解详细信息,请参阅 "Android Gradle 插件 DSL / API 迁移时间表":
https://developer.android.google.cn/studio/releases/gradle-plugin-roadmap
使用 Android Gradle 插件升级助手
https://developer.android.google.cn/studio/build/agp-upgrade-assistant
为新项目启用非传递 R 类 - Android Studio Arctic Fox 推出了全新的重构工具,可帮助你使用非传递 R 类来加速构建具有多个模块的应用。使用 Bumblebee 创建新项目时,IDE 会默认将项目配置为使用非传递 R 类。虽然此操作的确能提升性能,但你现在必须通过正确的 package 名称而不是父级模块的 package 名称来引用 R 类,因为 R 类将不再以传递方式进行解析。
默认启用模拟器工具窗口 - 此功能最早出现于 Android Studio 4.1 中,你可在 Android Studio 工具窗口中启动模拟器,部署虚拟 Android 设备并与之互动,同时依然停留在 IDE 环境中。Bumblebee 中的改进包括提供扩展控件以及更好地管理快照。如需了解详细信息,请参阅 "直接在 Android Studio 中运行 Android 模拟器":
https://developer.android.google.cn/studio/run/emulator#run-emulator-studio
Apple Silicon 支持更新 - 对于在 Apple Silicon (arm64) 硬件上使用 macOS 的用户,从去年开始,Android Studio Arctic Fox 和 Android 模拟器便已支持这种新架构。但在稳定版中,谷歌将 Android SDK 平台工具 v32.0.0 (包括 ADB 和 fastboot) 和构建工具 v32.1.0 (包括 aapt) 升级为通用二进制文件,这样你的 Android 开发者工具可不依赖 Rosetta 二进制翻译器直接运行。根据社区反馈,该硬件平台上的开发者已经看到性能有显著提升。请阅读版本说明了解详情:
https://developer.android.google.cn/studio/releases/platform-tools#revisions
分析和检查
性能剖析器中的卡顿检测轨迹 - 使用运行 Android 11 (API 级别 30) 或更高版本的设备分析你的应用时,CPU 性能剖析器现在会显示一组新的轨迹,以描绘帧生命周期 (Frame Lifecycle) 下每帧的各个阶段: 应用 (Application)、等待 GPU (Wait for GPU)、组合 (Composition) 以及显示帧 (Frames on display)。每个轨迹都会用帧号对帧进行标记并提供不同颜色的矩形进行区分,以便你轻松查看特定帧在其生命周期中的位置,此外还提供了辅助线,你可以随时打开或关闭,从而与 Vsync 事件进行比较。你可以借助这些数据来了解应用中可能出现卡顿的位置并调查根本原因。分析 (Analysis) 面板里新增了一个帧 (Frames) 标签页,可汇总所有帧的渲染信息以方便你查看。如需了解详细信息,请参阅 "界面卡顿检测":
https://developer.android.google.cn/studio/profile/jank-detection
△ CPU 性能剖析器中的帧生命周期详细信息
Studio 性能剖析器支持分析可分析应用 - 在分析应用时,应用的版本需要接近用户将安装的应用版本,这对生成准确的数据非常重要。为实现此目标,你现在可以在应用清单中增加
https://developer.android.google.cn/guide/topics/manifest/profileable-element
可分析 (Profileable) 是 Android 10 中引入的清单配置,可用于 CPU 和内存分析任务。使用可分析 (profileable) 标志而非可调试 (debuggable) 标志可明显降低性能测量的开销;但是,某些分析功能不适用于可分析构建,例如事件时间表 (Event timeline)、由 API 发起的 CPU 分析、堆转储或实时位置记录。如需了解详细信息,请参阅 "可分析应用":
https://developer.android.google.cn/studio/profile#profileable-apps
检查作业、警报和唤醒锁 - 后台任务检查器 (Background Task Inspector) 经扩充,现支持你检查作业、警报和唤醒锁。你可以查看后台任务安排的实时信息,以及它们执行的详细信息,操作方式与检查 Worker 类似。此外,在检查 Worker 时还可以追踪并检查它为你安排的作业。如果你曾在旧版 IDE 中使用过能耗性能分析器 (Energy Profiler),你现在可导航至菜单栏中的视图 (View) > 工具窗口 (Tool Windows) > 应用检查 (App Inspection) 并选择后台任务检查器 (Background Task Inspector) 来检查作业、警报和唤醒锁。
查看和检查作业、警报和唤醒锁
https://developer.android.google.cn/studio/inspect/task#inspect-jobs-alarms-wakelocks
△ 在后台任务检查器中检查作业、警报和唤醒锁
网络检查 - 网络分析器 (Network Profiler) 现在已迁移至应用检查 (App Inspection) 工具窗口,让你以更轻量的方式来检查应用中的网络流量。网络分析器的外观和风格得以保留,且可用于运行 API 级别 26 及更高级别设备上的所有可调试应用。如要使用新的分析器,请在菜单栏中选择视图 (View) > 工具窗口 (Tool Windows) > 应用检查 (App Inspection),然后选择网络分析器 (Network Inspector)。如需了解详细信息,请参阅 "使用网络分析器检查网络流量":
https://developer.android.google.cn/studio/debug/network-profiler
获取布局检查器快照 - 你现在可以获取应用布局层次结构的快照,以保存、共享或稍后检查。快照可获取你在使用布局检查器 (Layout Inspector) 时通常会看到的数据,包括详细的 3D 渲染布局和 View、Compose 或混合布局的组件树,以及界面每个组件的详细属性。检查实时运行应用的布局时,单击布局检查器工具栏中的导出快照 (Export snapshot) 并使用 *.li 扩展名保存快照。如需加载布局检查器快照,请从主菜单中选择文件 (File) > 打开 (Open) 并打开 *.li 文件。快照将显示在编辑器窗口的标签页中,以便你轻松将其与正在运行的应用进行比较。如需了解详细信息,请参阅 "获取布局层次结构快照":
http://developer.android.google.cn/studio/debug#capture-layout-hierarchy-snapshots
在布局检查器中支持 Compose 语义 - 在 Compose 中,语义用无障碍服务和测试框架可以理解的方式来描述你的界面。在 Android Studio Bumblebee 中,你可以使用布局检查器检查 Compose 布局的语义信息。选择 Compose 节点时,使用属性 (Attributes) 窗口检查其是否直接声明语义信息、或是合并其子节点的语义,还是两者兼有。如要快速识别哪些节点包含语义,无论是声明的还是合并的语义,请选择组件树 (Component Tree) 窗口中的视图选项 (View options) 下拉菜单并选择突出显示语义层 (Highlight Semantics Layers)。
Compose 中的语义
https://developer.android.google.cn/jetpack/compose/semantics
Compose 中的无障碍服务
https://developer.android.google.cn/jetpack/compose/accessibility
测试 Compose 布局
https://developer.android.google.cn/jetpack/compose/testing
检查 Compose 语义
https://developer.android.google.cn/studio/debug/layout-inspector#inspecting-compose-semantics
设计
互动预览 - Android Studio Arctic Fox 支持在编辑器的设计 / 拆分 (Design / Split) 窗口中静态预览可组合函数 (composable function)。在 Bumblebee 中,这个功能得到了扩展,以便你与 Compose 布局的某些组件进行互动以验证行为,无需构建完整应用并将其部署到正在运行的设备!如要开始使用此功能,请导航至可预览的 Compose 函数,然后在设计 / 拆分 (Design / Split) 窗口中点击开始互动模式 (Start Interactive Mode)。如需了解详细信息,请参阅 "互动模式":
https://developer.android.google.cn/jetpack/compose/tooling#preview-interactive
△ 与 Compose Preview 互动以验证行为
动画矢量可绘制对象预览 - 现在可使用预览 (Preview) 窗口查看矢量可绘制对象。查看静态可绘制对象时,你可以为预览窗口设置 "透明"、"白色"、"黑色"、"方格" 背景样式,以查看不同条件下的可绘制对象。动画可绘制对象则支持以不同速度和背景进行预览,从而帮助你在将其加入到应用前对其进行测试。如需了解更多信息,请查阅 "动画矢量可绘制对象 (AVD) 预览":
https://developer.android.google.cn/guide/topics/graphics/drawable-animation#AnimVectorPreview
△ 预览你的动画矢量可绘制对象
设计工具的设备选择器更新 - 为简化你针对多样化的 Android 设备设计应用的过程,谷歌已在多个设计工具,例如布局编辑器 (Layout Editor) 和布局验证 (Layout Validation) 的窗口中更新了设备选择器,其提供的参考设备反映了每种设备类型的流行尺寸。从手机到平板电脑,从 Wear 设备到 Android TV,现在你可以更轻松地在最能代表当下常见设备的屏幕尺寸上预览、验证或编辑布局。如需了解更多信息,请查阅 "更改预览外观":
https://developer.android.google.cn/studio/write/layout-editor#change-appearance
简要总结一下 Android Studio Bumblebee (2021.1.1) 的新增优化和功能:
构建和部署
使用 Gradle 在 Android Studio 中运行插桩测试
Android Gradle 插件升级助手现在可更新 API 使用情况
为新项目启用非传递 R 类
新的设备管理器 (Device Manager)
通过 Wi-Fi 使用 ADB
默认启用模拟器工具窗口
Apple Silicon 支持更新
分析和检查
性能剖析器中的卡顿检测轨迹
Studio 性能剖析器支持分析可分析应用
在后台任务检查器中检查作业、警报和唤醒锁
获取布局检查器快照
在布局检查器中支持 Compose 语义
设计
互动预览
动画矢量可绘制对象预览
设计工具的设备选择器更新