一起看 I/O | 隆重推出 AI 驱动的编码助手 Studio Bot

一起看 I/O | 隆重推出 AI 驱动的编码助手 Studio Bot

作者 / Android Studio 高级产品经理 Adarsh Fernando

我们在 2013 年 Google I/O 大会上首次宣布推出 Android Studio,并承诺为 Android 应用开发者提供一流的集成开发环境 (IDE)。10 年后的今天,我们对提高开发者工作效率的承诺仍然推动着团队开发新的工具以及寻找新的解决方案,从而帮助世界各地的开发团队为用户打造出色的应用体验。Google 致力于发挥 AI 的优势帮助您更加精彩的度过每一天,因此 Android Studio Hedgehog 推出了一项重大突破: 由 AI 驱动、帮助您提高工作效率的对话体验。

除了提高编码工作效率外,此最新版本的 IDE 可在您针对多种设备类型进行开发时提供更好的工具,并通过新的数据洞见、调试和测试解决方案帮助您提高应用质量。所有这些改进都是对我们在 Android Studio Giraffe 中发布的众多更新的补充。Android Studio Giraffe 帮助您更轻松地通过 Kotlin DSL 支持配置版本、缩短与新数据和指南的同步时间、借助新版 Android SDK 升级助手确定最新的 Android SDK 版本,以及获享更多新功能。目前 Android Studio Giraffe 正处于 Beta 版本。

想要了解包括 Studio Bot 在内的新功能亮点,您可以观看 2023 年 Google I/O 大会 "Android 开发者工具的新功能" 演讲视频。

|video

△ Android 开发工具的新功能,附带 Studio Bot 演示

我们将在本文中为您介绍诸多激动人心的新功能,也欢迎您立即下载,即刻试用 Android Studio Hedgehog:

https://developer.android.google.cn/studio

编码效率

隆重推出 Android Studio Bot

我们的核心使命是提高您为 Android 编写高质量代码的能力。在此 Android Studio 版本中,我们很高兴地推出名为 Studio Bot 的 AI 驱动式对话体验。该工具利用 Codey (Google 的编码基础模型,前身是 PaLM 2) 来帮助您为应用生成代码,并提高您的效率。您还可以在工具中提问以了解有关 Android 开发的更多信息,或获取有关修复现有代码中错误的帮助,且这些操作都不需要您离开 Android Studio。Studio Bot 目前尚处于非常早期的阶段,我们还在对它进行训练,以让它能够更好地回答您的问题和帮助您学习最佳实践。欢迎您进行尝试,并直接与 Studio Bot 分享您的反馈,帮助我们更有针对性地对其进行改进。

隐私是我们的首要考虑因素,而此工具集成的独特之处在于——您无需将源代码发送给 Google 便可使用 Studio Bot,仅共享您与 Studio Bot 之间的聊天对话。与我们在其他 AI 项目上的工作一样,我们坚守原则以承担我们的责任,在发布过程中采取循序渐进的方法。Studio Bot 首个版本目前仅供美国的 Android 开发者使用。您可以阅读相关文档,了解更多内容:

|video

△ Studio Bot

实时编辑

当您更新 Compose 界面并在正在运行的设备上验证这些变更时,实时编辑可以最大限度地减少中断,从而帮助您保持工作状态。您可以使用实时编辑在手动模式下控制正在运行的应用应该何时更新,也可以使用自动模式在您修改代码时更新正在运行的应用。Android Studio Giraffe Beta 版支持实时编辑;Hedgehog 版本则在错误处理和报告方面提供了额外的改进。

△ 使用 Compose 进行实时编辑

构建效率

Kotlin DSL 和版本目录

我们推出了许多更新以帮助您在配置构建时利用更加现代化的语法和惯例。我们推荐您在为 Android 开发时使用 Kotlin 语言。官方目前正式支持使用 Kotlin DSL 编写 Gradle 构建脚本,这也是配置构建的首选方式,因为 Kotlin 更便于阅读且能提供更好的编译时检查和 IDE 支持。此外,我们还增加了对基于 TOML 的 Gradle 版本目录的实验性支持,以便您在一个集中位置管理依赖项并跨模块或项目共享依赖项。借助编辑器建议以及 "项目结构" 对话框和 New Project 向导的集成,您现在可以更轻松地使用 Android Studio 来配置版本目录。

△ 新项目向导中的 Kotlin DSL 和版本目录

各应用语言偏好设定

通常情况下,多语言用户会将他们的系统语言设置为一种语言 (如英语),但他们又希望为特定应用选择其他语言,如荷兰语、中文或印地语。Android 13 引入了对各应用语言偏好设定的支持,现在 Android Gradle 插件 8.1 及更高版本可配置您的应用以自动支持这项设定。

https://developer.android.google.cn/studio/preview/features#automatic-per-app-languages

同步过程中的下载影响

使用 Android Gradle 插件 7.3 或更高版本时,"构建">"同步" 工具窗口现在提供下载依赖项所需时间的摘要以及每个代码库的详细下载视图,帮助您轻松确定意外的下载是否影响构建性能。此外,该插件还有助于您识别配置代码库方法中的低效问题。

△ 在 Build Analyzer 中显示构建过程中的下载影响

全新的 Android SDK 升级助手

Android Studio Giraffe 引入了新工具 Android SDK 升级助手。该工具可以帮助您升级 targetSdkVersion,即您的应用所针对的 API 级别。使用 Android SDK 升级助手无需浏览目标 Android SDK 版本的每项 API 更改,而是通过创建适用您应用的 API 更改自定义过滤条件,指导您逐级升级 targetSdkVersion。对于每个迁移步骤,该工具都会突出显示主要的破坏性更改以及解决措施,从而有助于您更快地利用最新版 Android 所提供的优势。如要打开 Android SDK 升级助手,您可以前往 "工具">"Android SDK 升级助手"。在 "助手" 面板中,选择要升级到的 API 级别以获取指导。

△ 借助 Android SDK 升级助手加速升级

针对设备类型进行开发

Google Pixel Fold 和

Google Pixel Tablet 虚拟设备

尽管这些设备要到今年晚些时候才会发布,但您可以通过在 Android Studio Hedgehog 中使用新的 Google Pixel Fold 和 Google Pixel Tablet 设备配置文件创建虚拟设备来让您的应用做好准备,从而充分利用此类设备的更大屏幕尺寸及更多功能。如要开始使用,您可以打开 "设备管理器" 并选择 "创建设备"。

△ 在 Android 模拟器上运行 Pixel Tablet

针对 Wear OS 4 开发者预览版的模拟器支持

Wear OS 4 是 Wear 设备基于 Android 13 的新一代操作系统。Wear OS 4 将于今年秋季正式发布,并提供大量新功能和优化。我们将通过新的 Wear OS 4 模拟器为您提供所有新平台功能的预览。我们建议您使用 Android Studio Hedgehog 进行体验,并测试您的 Wear OS 应用能否按预期适配最新的平台更新。Wear OS 4 模拟器可让您更快、更顺利地过渡到 Wear OS 4,并帮助您及时为在真实设备上正式发布 Wear OS 4 做好准备。您可以查看 Wear OS 4 预览版网站,了解如何开始使用新的 Wear OS 4 模拟器。

Wear OS 4 模拟器中的表盘格式支持

我们很高兴能与 Samsung 合作宣布推出表盘格式,这是一种为 Wear OS 构建表盘的新方法。表盘格式为声明式 XML 格式,这意味着您的表盘 APK 中不会有任何代码。平台会负责渲染表盘所需的逻辑,因此您无需再担心代码优化或电池性能问题。您可以使用 Watch Face Studio 等表盘创建工具设计表盘,或者手动或动态编辑表盘格式以直接构建表盘。您可以在 Wear OS 4 模拟器上测试新的表盘格式。

△ Wear OS 4 模拟器上的表盘格式表盘

本地设备的设备镜像

无论您是使用直接的 USB 连接还是通过 Wi-Fi 使用 ADB,设备镜像都可以让您直接在 Android Studio "运行设备" 窗口中查看本地实体设备并与之互动。借助此功能,您可以专注于如何在同一位置开发和测试您的应用。我们将在 Hedgehog 版本中增加更多功能,包括镜像 Wear OS 设备和直接从 IDE 模拟可折叠设备的折叠操作。

△ Pixel Fold 设备镜像

Android 设备流式传输

我们知道,有时您必须查看和测试您的应用在实体硬件设备上的工作情况,以确保您的用户拥有最佳体验。然而,获取最新的旗舰设备并非易事。在本地设备的设备镜像基础上,我们将直接在 Android Studio 中引入远程实体 Google Pixel 设备 (如 Pixel Fold 和 Pixel Tablet) 的设备流式传输功能。借助设备流式传输功能,您可以将应用部署到这些远程设备中并与之互动,而无需离开 IDE。如果您有兴趣在今年晚些时候抢先体验,欢迎您立即注册:

https://developer.android.google.cn/studio/preview/android-device-streaming

Espresso 设备 API

使用 Espresso API 自动测试您的应用有助于您在用户受到影响前及早发现潜在问题。但是,测试应用在设备旋转或折叠等配置变更情况下的表现一直是个挑战。Espresso 设备 API 现在可以帮助您编写测试,该测试可在运行 API 级别 24 及以上的 Android 虚拟设备进行测试时执行同步配置变更。您还可以设置测试过滤条件,以确保特定设备 (如折叠设备) 功能的测试仅在支持这些功能的设备上运行。欢迎您了解详情:

https://developer.android.google.cn/studio/preview/features#espresso-device-api

△ 使用 Espresso 设备 API 进行同步设备配置变更

提高您的应用质量

App Quality Insights 整合 Android vitals 数据

Android Studio Electric Eel 引入了 App Quality Insights,开发者现在可以直接从 IDE 访问 Firebase Crashlytics 问题报告。借助该集成,您可以通过点击在堆栈轨迹导航至代码、使用过滤条件仅查看最重要的问题,并借助报告详细信息重现问题。在 Android Studio Hedgehog 中,您现在可以查看由 Google Play 提供技术支持的 Android vitals 中的重要崩溃报告。Android vitals 报告还包括实用的数据洞见,例如来自 SDK 供应商的说明,以便您可以快速诊断和解决与您应用正在使用的 SDK 相关的崩溃问题。

△ "App Quality Insights" 窗口中的 Android vitals 崩溃报告

App Quality Insights 代码导航全新升级

当您使用 AGP 8.2 最新版本发布应用时,崩溃报告现在会附加最少的 git 提交哈希数据,以帮助 Android Studio 在 IDE 中调查 Crashlytics 崩溃报告时导航至您的代码。现在,当您在查看包含必要元数据的报告时,您可以选择导航至当前 git checkout 命令中的代码行,或者查看 checkout 命令中与导致崩溃的代码库版本之间的差异。如要开始使用正确的依赖项,请参阅相关文档:

https://developer.android.google.cn/studio/preview/features#aqi-vcs

调试程序中的 Compose 状态信息

若 Compose 界面的部分内容意外重组,开发者有时很难弄清原因所在。现在,只要在可组合函数上设置断点,调试程序便会列出可组合函数的参数及其状态,这样一来您就可以更轻松地识别可能导致重组的更改。例如,当您在可组合项上暂停时,调试程序将准确告诉您哪些参数 "已更改" 或保持 "未更改" 状态,以便您更有效地调查重组的原因。

△ 调试程序中的 Compose 状态信息

全新电源性能分析器 (Power Profiler)

我们很高兴地宣布在 Android Studio Hedgehog 中推出全新的电源性能分析器 (Power Profiler),该分析器可以显示运行 Android 10 及以上版本的 Pixel 6 及更高版本设备上的功耗情况。数据按各个子系统 (例如,相机、GPS 等) 划分。分析器在记录系统跟踪记录时会获取这些数据,这些数据有助于您直观地将设备的功耗与应用中发生的操作相关联。例如,您可以对视频通话应用的多种算法进行 A/B 测试,以优化相机传感器的功耗。

△ 全新电源性能分析器 (Power Profiler)

设备浏览器

Giraffe 中的设备文件浏览器已更名为设备浏览器 (Device Explorer),并更新了功能以包含在已连接设备上运行的相关可调试进程的信息。除了包含现有功能的 "文件" 标签页,可以让您浏览设备文件层次结构外,新的 "进程" 标签页还允许您查看已连接设备的可调试进程列表。在该标签页中,您还可以选择一个进程并执行 "终止进程" 操作 (运行 am kill)、执行 "强行停止" 操作 (运行 am force-stop),或将调试程序附加到选定进程中。

△ "设备浏览器" 窗口中的 "进程" 标签页

Compose 动画预览

Android Studio Hedgehog 中的 Compose 动画预览现支持许多额外的 Compose API,包括 animate*AsState、CrossFade、rememberInfiniteTransition 以及 AnimatedContent,但不包含 updateTransition 和 AnimatedVisibility。Compose 动画预览还具有新的选择器,可让您设置非枚举或布尔值状态,以使用精确输入调试 Compose 动画。您可以播放、暂停、拖动、控制速度和统筹所有受支持的 Compose Animation API。

△ Compose 动画预览

嵌入式布局检查器

您现在可以在 Android Studio 的 "运行设备" 窗口中直接运行嵌入的布局检查器!在 Android Studio Hedgehog 中试用此功能,可以帮助您节省屏幕空间并在单个工具窗口中组织您的界面调试工作流。您可以访问常见的布局检查器功能,例如通过显示视图层次结构调试应用的布局、检查每个视图的属性。此外,由于嵌入式布局检查器覆盖在现有设备镜像流之上,因此现在使用检查器时的整体性能大大提高。若您想要开始使用并了解已知限制,请阅读版本说明。

△ 嵌入式布局检查器

Gradle 管理的设备

现支持 Firebase Test Lab

Gradle 管理的设备已在 Android Gradle 插件 (AGP) 7.3 版中可用。通过让 Gradle 管理设备配置的方方面面,在持续集成 (CI) 基础架构中运行自动化测试时您可以更轻松地利用虚拟设备。您只需使用 AGP DSL 来描述您希望 Gradle 使用的设备即可。但有时您需要在实体 Android 设备上运行测试。在 AGP 8.2 版中,我们扩展了 Gradle 管理的设备,使其能够将 Firebase Test Lab (FTL) 中运行的实际实体设备和虚拟设备作为测试目标。该功能可以让开发者更轻松地进行可扩展的测试,只需要几个简单的步骤就可以在大量不同的 FTL 设备上进行测试。此外,此 AGP 版本还可以利用 FTL 的全新智能分片功能,利用并行运行的多个设备让您更快地获得测试结果。如需了解详情并开始使用,请阅读版本说明。

△ 具有 Firebase Test Lab 支持的 Gradle 管理的设备

IntelliJ

IntelliJ 平台更新

Android Studio Hedgehog (2023.1 版) 包含 IntelliJ 2023.1 平台版本,该版本新增了 IDE 启动性能改进、加快了 Maven 项目的导入速度以及更精简的提交流程。请阅读 IntelliJ 版本说明:

https://www.jetbrains.com/idea/whatsnew/2023-1/

新界面

除 IntelliJ 平台更新外,我们还对新界面做了进一步改进。我们推出了全新的紧凑模式。该模式提供更统一的 IDE 外观和风格,以及垂直拆分工具窗口区域和方便地排列窗口的选项 (和旧界面中的一样),这在很大程度上得益于社区反馈。我们还通过更新主工具栏、工具窗口以及推出新图标,改进了专用于 Android 的界面。如要使用新界面,您可以在 "设置">"外观和行为">"新界面" 中启用。如需查看关于这些更改的完整列表,请参阅 IntelliJ 新界面文档:

https://www.jetbrains.com/help/idea/new-ui.html

△ 从 IntelliJ 采用的新界面

总结

简要回顾一下,Android Studio Giraffe 现已推出 Beta 版以供使用。Android Studio Hedgehog 是最新版本的 IDE,可通过 Canary 渠道获取,包括以下所有新功能和特性:

编码效率

  • Android Studio Bot : 是 Android Studio 中紧密集成由 AI 驱动的助手,帮助您提高工作效率。
  • 实时编辑 (Beta 版) : 当您更新 Compose 界面并于正在运行的设备上验证这些变更时,它可以最大限度地减少中断,从而帮助您 "全神贯注"。

构建效率

  • **Kotlin DSL 和版本目录 **(Beta 版 ) : 有助于您在配置构建时利用更现代的语法和惯例。

  • **各应用语言偏好设定 **(Beta 版 ) : 内置于 AGP 中以支持自动配置各应用语言偏好设定。

  • 使用 Build Analyzer 检查下载影响 (Beta 版) : 提供下载依赖项所需时间的摘要以及每个代码库的详细下载视图,帮助您轻松确定意外的下载是否影响构建性能。

  • 全新 Android SDK 升级助手 (Beta 版) : 有助于您更快地升级 targetSdkVersion,即您的应用所针对的 API 级别。

针对设备类型进行开发

  • Google Pixel Fold 和 Google Pixel Tablet 虚拟设备 : 有助于让应用做好适配准备,以便在这些设备上市之前充分利用此类设备的更大屏幕尺寸及更多功能。

  • Wear OS 4 开发者预览版模拟器 : 您可借此抢先体验,以针对新一代 Wear OS by Google 测试和优化您的应用。

  • Wear OS 4 开发者预览版模拟器中的表盘格式支持 : 一种为 Wear OS 构建表盘的新方法。

  • 本地设备的设备镜像 : 让您可以直接在 Android Studio 的 "运行设备" 窗口中查看本地实体设备并与之互动。

  • Android 设备流式传输 : 一种远程实体 Google Pixel 设备的设备流式传输。欢迎您立即注册以抢先体验:

https://developer.android.google.cn/studio/preview/android-device-streaming

  • Espresso 设备 API : 有助于您编写测试,该测试可在运行 API 级别 24 及以上的 Android 虚拟设备进行测试时执行同步配置更改。

提高您的应用质量

  • App Quality Insights 整合 Android vitals 数据 : 您现在可以查看、过滤和浏览来自 Android vitals 的重要崩溃报告,该报告由 Google Play 提供技术支持。
  • App Quality Insights 代码导航全新升级 : 您现在可以选择导航至当前 git checkout 命令中的代码行,或者查看 checkout 命令中与导致崩溃的代码库版本之间的差异。
  • 调试程序中的 Compose 状态信息 : 在可组合函数上设置断点使程序暂停执行,调试程序会列出可组合函数上的参数及其状态,以便您更轻松地识别可能导致重组的更改。
  • 全新电源性能分析器 (Power Profiler) : 高度准确地显示按每个子系统划分的设备功耗。
  • 设备浏览器 (Beta 版) : 包含在已连接设备上运行的可调试进程以及您可以在其中执行的操作的相关信息。
  • Compose 动画预览 (Beta 版) : 现在支持大量额外的 Compose API 和新的选择器,可让您设置非枚举或布尔值状态,以使用精确输入调试 Compose 动画。
  • 嵌入式布局检查器 : 您可以在 Android Studio 的 "运行设备" 窗口中运行嵌入的布局检查器,以获享更顺畅的调试体验和显著的性能改进。
  • Gradle 管理的设备现支持 Firebase Test Lab : 可利用 GMD 帮您无缝配置 Firebase Test Lab 设备以进行自动化测试,且现在还额外支持智能分片。

IntelliJ

  • IntelliJ 平台更新 至 IntelliJ 2023.1 平台版本,其中包括许多性能提升和开发者体验改进。
  • 新界面更新,允许 Android Studio 采用 IntelliJ 现代设计语言的一些改进。

如需了解更多详细信息,您可以参阅 Android Studio 预览版版本说明、Android 模拟器版本说明。

立即下载 Android Studio!

您可以立即下载 Android Studio Hedgehog Canary 版或 Android Studio Giraffe Beta 版,以将新功能整合到您的工作流中。您可以参考安装预览版 Android Studio 说明将上述版本与 Android Studio 稳定版并行安装。Beta 版接近稳定版的质量,但可能仍然存在错误;Canary 版则拥有领先的功能。我们还是一如既往地感谢您的反馈,以便我们了解您喜欢的内容以及希望体验的功能。如果您发现错误或问题,欢迎分享给我们,或者参阅已知问题。也欢迎您持续关注 "Android 开发者" 微信公众号,及时了解更多开发技术和产品更新等资讯动态。

版权声明

禁止一切形式的转载-禁止商用-禁止衍生 申请授权

脉脉不得语
脉脉不得语
Zhengzhou Website
Android Developer | https://androiddevtools.cn and https://androidweekly.io WebMaster | GDG Zhengzhou Funder & Ex Organizer | http://Toast.show(∞) Podcast Host

你已经成功订阅到 Android 开发技术周报
太棒了!接下来,完成检验以获得全部访问权限 Android 开发技术周报
欢迎回来!你已经成功登录了。
Unable to sign you in. Please try again.
成功!您的帐户已完全激活,您现在可以访问所有内容。
Error! Stripe checkout failed.
Success! Your billing info is updated.
Error! Billing info update failed.