> 技术文档 > Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

又到了认识全新动物的时候,这次更新的是 Narwhal (独角鲸),本次更新主要是跟进 IntelliJ IDEA 2025.1 ,后面还会有对应的 Narwhal Feature Drop 的版本,而提到 IntelliJ IDEA 2025.1 ,就不得不说 K2 ,在 IntelliJ IDEA 2025.1 里面,K2 已经是默认选项。

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

K2 Mode

“K2” 指的是的是 Kotlin 插件包含用于代码分析的 K2 Kotlin 编译器的内部版本,而 K1 模式使用 K1 编译器,IntelliJ IDEA 中内置的 Kotlin 编译器版本完全独立于项目构建文件中指定的版本,但它可能会影响项目中支持的 Kotlin 版本范围:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

IntelliJ IDEA 的 K2 模式并不依赖于项目构建设置中指定的 Kotlin 编译器版本,K2 模式代表 IDE 中对 Kotlin 编辑场景支持的几乎完全重写,而使用 K2 编译器可以带来:

  • 高达 94% 的编译速度提升
  • 在初始化阶段的速度提高了 488%
  • 与之前的编译器相比,Kotlin K2 编译器在分析阶段的速度提高了 376%
  • ····

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

所以基于 K2 编译器能力的 K2 模式,在 Kotlin 代码分析、补全和导航速度方面取得了巨大进步,这体现在全新 IDE 下就是:

  • 提高代码分析的性能(如高亮、补全速度)
  • 更快的查找和跳转
  • 支持 Kotlin 2.0 及以上版本的新语言特性

总结下来就是:

  • K2 编译器是 Kotlin 语言的新一代编译器
  • K2 Mode 是 IntelliJ IDEA 的一种运行模式

K2 Mode 是 IDEA 利用 K2 编译器的前端(解析和语义分析部分)来增强 IDE 的 Kotlin 代码理解能力,但不直接参与项目的实际编译,功能范围仅限于 IDE 的交互体验。

更多可见: IntelliJ IDEA 2025.1 默认 K2 模式

Terminal

JetBrains IDE 的 2025.1 版本开始,重新设计的终端架构将替代原有的设计,而之所以重新设计,只能说上一个更新给自己挖的坑太大:

在上一个版本,为了搞 AI 支持,终端不会让 shell 直接处理行编辑和快捷方式,而是拦截 IDE 中的用户输入(例如击键和提示文本),并且仅在用户按 Enter 时才向 shell 发送命令。

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

所以为了补救,所以 2025 这次再重构,核心就是兼容性和一致性需要回归第一位,重构的终端进行了进一步调整,继续以 JediTerm 作为核心模拟器通过 IDE 编辑器进行渲染 ,进而回归终端应有的体验。

更多可见:JetBrains Terminal 又发布新架构

Gemini

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

Android Studio Narwhal 的大量更新都是在 Gemini,虽然国内可能用 Copilot 的比较多,但是现在 Gemini 的体验确实越来越完善,例如:

  • 支持图像和文件附件,在查询栏中输入 @ 即可调出文件补全菜单,然后选择要附加的文件:Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

  • 使用 Gemini 生成 composables 的预览:Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

另外大量关于 Gemini 的更新还在 Feature Drop 中等待发布。

Feature Drop

这部分目前还是在 Canary 状态,属于 Feature Drop 更新,不一定完全都会在 Narwhal 正式版推出。

现在所有 Studio 的版本号都开始遵循这样的格式: .. ,比如这次的 2025.1.1 ,其中初始的动物版本发布将带有 “.1” 的 Android Studio 主版本号,用于引入更新的 IntelliJ 平台版本号,而随后的功能更新将把 Android Studio 的主版本号提升到 “.2”,属于 Feature Drop 聚焦于引入更多特定于 Android 的功能

Test Journey

Journeys for Android Studio ,在 Android Studio 的 Project 面板,右键选择对应的 app module ,选择 New > Test > Journey File ,就可以在出现的对话框中创建:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

然后你就可以使用文本字段来描述 Journey 的每个步骤,每个步骤可以包含你希望 Gemini 执行的描述性操作,或希望 Gemini 评估的断言:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

Journey 在运行时还会显示一些的结果,例如每个步骤执行过程中的屏幕截图、采取的操作和推理:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

更多可见:https://developer.android.com/studio/preview/gemini/journeys

Agent

Android Studio Agent 模式下的 Gemini ,类似 Cursor ,可以处理更复杂的多阶段开发任务:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

另外,你还可以在 Android Studio > Settings > Tools > Gemini > Prompt Library > Rules 定义首选的编码风格或输出格式,甚至是首选的技术栈和语言:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

IDE 级别的规则属于本地私有,并且可以跨多个项目使用,而项目级规则可以在同一个项目的团队成员之间共享,但必须将 .idea 文件夹添加到版本控制系统。

Suggested Fixes

针对 App Quality Insights 工具窗口中报告的崩溃问题,现在还正式支持 Gemini Insights ,现在 Android Studio 可以使用 Gemini 分析崩溃数据和源码,并同时提出对应的修复建议。

在 App Quality Insights 工具窗口中选择一个崩溃问题后,导航到 Insights 标签页,然后点击 Suggest a fix 提出修复建议 ,Gemini 随后会生成建议的代码更改,用户可以在编辑器的 diff tab 查看并接受:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

备份支持

现在可以使用 Google 或 JetBrains 帐户将 Android Studio 设置备份到云存储,例如键盘映射、代码编辑器设置、系统设置等:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

等于以后 IDE 的风格和设置,可以通过个人账户在不同机器同步。

XR Emulator

XR 模拟器现在默认通过嵌入状态启动,可以在 Android Studio 中直接部署应用、导航 3D 空间并使用布局检查器:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

也就是,Android Studio Narwhal 已经支持开发者使用 Jetpack XR 构建 XR 应用。

Compose 预览改进

首先,新版本改了导航支持,现在点击预览名称就可以直接跳转到预览定义,点击单个组件即可跳转到其定义的函数,并且悬停状态可在预览帧上时提供即时视觉反馈,同时改进的键盘箭头导航简化了在多个预览之间的移动,从而加快了 UI 迭代和优化速度:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

另外,Compose Preview picker 也发不了,点击任意 @Preview 代码就可以看到:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

除此之外,Compose Preview 现在支持动态调整大小,只要你切换到 Focus 模式:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

然后你就可以通过拖动预览窗口的边缘来调整大小,或者使用调整大小工具栏:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

另外, Layout Inspector 也进行了增加:

  • 水平滚动 :可以在组件树内水平滚动
  • 选择时自动滚动 :在组件树中选择一个项目时,视图将自动水平和垂直滚动,从而让所选项目整齐地成为焦点
  • 改进的关系可视化 :优化了组件树中的支撑线,提供更清晰的视觉提示,方便理解节点关系,比如虚线现在清晰地指示父节点与其子节点之间的调用堆栈关系,实线继续表示树中所有其他标准的父子关系

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

16 KB page size

Android Studio 增加了 16 KB 页面大小过渡的支持,现在会在构建 16 KB 设备不兼容的 APK 或 Android App Bundle 时提供主动警告,同时使用 APK 分析器,还可以找出哪些库与 16 KB 设备不兼容:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

如果你还想知道,不支持的 so 是来自哪个 aar 的,可以看:《如何查看项目是否支持最新 Android 16K Page Size 一文汇总》

Layout Inspector 里的 Child recomposition

Layout Inspector 现在支持展示 Child 重组计数,即使重组的可组合项在组件树中的父级下折叠,也可以看到相应的重组计数,当看到子组件重组计数增加时,你就可以打开组件树并查找发生重组的位置:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

新设置

首先,现在可以使用 Project view 打开新项目, 可以在 File (Android Studio on macOS) > Settings > Advanced Settings > Project View 选择 Set Project view as the default

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

其次还可以禁用自动同步,可以在打开项目时取消自动运行同步,在 File (Android Studio on macOS) > Settings > Build, Execution, Deployment > Build Tools 路径,通过 Project Sync mode 进行修改:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

这样就可以避免在打开 AS 时,因为同时打开多个项目而造成卡顿。

Play Policy

从 Android Studio Narwhal 功能发布开始,用户可以将 Play Policy Insights 视为 Lint 检查,这些 Lint 检查将显示以下信息:

  • 政策的概述
  • 需要做的和不应做的事情
  • 链接到 Play 政策页面

可以通过 Code > Inspect for Play Policy Insights 查看你的项目里需要处理的问题:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

Android Device Streaming

Partner Device Labs 是 Google OEM 合作伙伴运营的设备实验室,例如 三星、小米、OPPO、OnePlus、vivo 等,在此基础上扩大 Android 设备串流中可用设备的选择范围,可以通过在 Device Manager 选择 **+ > Select Remote Devices 打开:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

如果你选择的 Firebase 项目未启用所需的合作伙伴实验室,Android Studio 会通知启用所选的合作伙伴实验室:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

而为了让串流服务更实用,Android Studio Narwhal 还提供了为应用生成备份,并将其恢复到其他设备的方法,具体可以:

  • Running Device 窗口,单击工具栏中的 Backup App Data
  • 从主菜单栏中选择 Run > Backup App Data
  • Device Explorer > Processes 中,右键对应 App 进程并选择 Backup App Data

然后就可以根据需求进行备份,备份成功可以在 Project > Android 工具窗口的 Backup Files 节点下查看生成的备份:

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

同样的,可以在以下场景对数据进行恢复:

  • Running Device 窗口,点击 Restore App Data 操作,然后选择最近的历史记录或点击 Browse
  • 从主菜单栏导航到 Run > Restore App Data
  • Device Explorer > Processes 选项,右键点击 App 进程并选择 Restore App Data

甚至你还可以配置到 Run > Edit Configurations

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧

参考链接

  • https://developer.android.com/studio/releases