版本概况
Android Studio Flamingo | 2022.2.1 Patch 1
Build #AI-222.4459.24.2221.9971841, built on April 20, 2023
Runtime version: 17.0.6+0-b2043.56-9586694 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 11 10.0
GC: G1 Young Generation, G1 Old Generation
Memory: 1280M
Cores: 6
Registry:
external.system.auto.import.disabled=true
ide.text.editor.with.preview.show.floating.toolbar=false
ide.balloon.shadow.size=0
gradle.version.catalogs.dynamic.support=trueNon-Bundled Plugins:
com.intuit.intellij.makefile (2.2.0)
com.github.setial (4.0.2)
com.alayouni.ansiHighlight (22.3.3)
GsonOrXmlFormat (2.0)
GLSL (1.24)
com.mistamek.drawablepreview.drawable-preview (1.1.5)
com.layernet.plugin.adbwifi (1.0.5)
com.likfe.ideaplugin.eventbus3 (2020.0.2)
Android Gradle 插件和 Android Studio 兼容性
Android Studio 构建系统以 Gradle 为基础,并且 Android Gradle 插件添加了几项专用于构建 Android 应用的功能。下表列出了各个 Android Studio 版本所需的 Android Gradle 插件版本。
如果您的项目不受某个特定版本的 Android Studio 支持,您仍然可以使用旧版 Android Studio 打开和更新项目。
Android Studio 版本 | 所需插件版本 |
---|---|
Giraffe | 2022.3.1 | 3.2-8.1 |
Flamingo | 2022.2.1 | 3.2-8.0 |
Electric Eel | 2022.1.1 | 3.2-7.4 |
Dolphin | 2021.3.1 | 3.2-7.3 |
旧版
如需了解 Android Gradle 插件的新变化,请参阅 Android Gradle 插件版本说明。
以下是 Android Studio Flamingo 中的新功能。
主题应用程序图标和动态颜色
从Android Studio Flamingo Beta 1开始,您可以创建着色的布局或启动程序图标,以继承用户选择的壁纸的颜色。此功能使用Material 3中的动态颜色和Android 13中的主题应用程序图标。
支持预览带主题的应用图标
对于 launcher.xml
文件,您现在可以在工具栏中使用新的 System UI Mode 选择器来切换壁纸,并在使用不同用户所选壁纸时查看带主题的应用图标的显示效果。
System UI Mode 选择器。
预览不同壁纸中带主题的应用图标
动态配色预览
对于 Compose 预览:我们在可组合项预览注解中添加了一个新属性 wallpaper
。如果您已在应用中启用动态配色,则可以使用这个新属性切换壁纸,并在使用不同的用户所选壁纸时查看界面的显示效果。如需使用此功能,您必须使用 Compose 1.4.0-alpha03 或更高版本。
Compose 预览中的动态配色壁纸
对于 Android XML:如果您已在应用中启用动态配色,现在可以在工具栏中使用新的 System UI Mode 选择器切换壁纸,并在使用不同用户所选壁纸时查看布局的显示效果。请注意,您必须先选择将主题更改为 Material 动态配色主题,然后再更改壁纸。
布局编辑器中的动态配色壁纸。
实时编辑功能更新
实时编辑现在有两种模式:手动和自动。在手动模式下,所做的代码更改会在您每次使用 Ctrl
+ S
(在 macOS 上,则使用 Command
+ S
)手动保存时应用。在自动模式下,当您更新可组合函数时,所做的更改会即时应用到设备或模拟器中。如需选择运行实时编辑的模式,请从菜单栏中依次选择 File > Settings(在 macOS 上,则依次选择 Android Studio > Preferences),依次点击 Editor > Live Edit,然后勾选 Push Edits Manually 或 Push Edits Automatically 复选框。
Compose Tracing 功能
系统跟踪实用程序是一款 Android 工具,可将设备活动记录保存到跟踪文件,该文件可提供给定时间段内应用系统进程的整体情况。从 Android Studio Flamingo 开始,您可以使用 Compose Tracing 功能在 System Trace 性能分析器中查看 Compose 函数。 Compose Tracing 可让您获享系统跟踪的低干扰,并获得有关组合的方法跟踪级详细信息,有助于您了解哪些 Compose 函数实际上正在重组。
如需开始使用重组跟踪,您需要至少更新到以下版本:
- Android Studio Flamingo Canary 5
- Compose UI:1.3.0-beta01
- Compose Compiler:1.3.0
- 运行轨迹的设备或模拟器必须至少为 API 级别 30。
此外,您还需要新增以下 Compose Runtime Tracing 依赖项:
implementation("androidx.compose.runtime:runtime-tracing:1.0.0-alpha01")
如需查看重组跟踪情况,请打开 Android Studio 性能分析器,然后选择 CPU 性能分析器。将应用转到您要跟踪的界面,然后选择 System Trace 和 Record。记录时,请使用您的应用发起重组。停止记录和跟踪进程后,您可以直接在 Threads 时间轴中看到重组轨迹中的 Compose 函数。您还可以从 Analysis 窗格的 Flame Chart、Top Down、Bottom Up 和 Events 标签页中查看 Compose 函数。
这是一项正在开发中的实验性功能,我们欢迎您提供反馈。如需了解详情,请参阅 Compose tracing。
项目模板更新
Android Studio Flamingo Canary 6 添加了用于创建项目或模块的新模板。默认情况下,模板使用 Compose Material 3,但被指定为 View 模板的情况除外。我们建议最好使用 Compose Material 3 模板(例如 Empty Activity)来创建 Android 应用。如需了解详情,请参阅 Compose Material 3 参考文档。
如需查看模板,请从主菜单中依次选择 File > New > New Project 或 New Module,然后打开 New Project 或 Create New Module 向导。
Network Inspector 流量拦截
从 Android Studio Flamingo Canary 1 开始,默认情况下,Network Inspector 会显示完整时间轴的所有流量数据。您可以选择时间轴中的某个范围,以便仅查看该范围内的流量。
您还可以创建和管理规则,以帮助测试应用在遇到不同响应(例如状态代码、响应标头和正文)时的行为方式。这些规则可确定要拦截哪些响应,以及如何在响应到达应用之前修改这些响应。您可以通过勾选各条规则旁边的 Active 复选框来选择要启用或停用的规则。每次修改规则时,系统会自动保存规则。
如需新建规则,请前往 Network Inspector 中的 Rules 标签页,然后点击 + 以创建新规则。在 Rule Details 面板中为新规则命名,并在 Origin 子部分下添加要拦截的响应的来源信息。Rules 表中的网址应该会根据您对响应来源所做的更改进行更新。该子部分中的所有字段均为选填字段。
在 Response 子部分中,您可以在响应被发送到应用之前修改响应。例如,您可以将规则设置为对具有特定状态代码的响应执行规则并修改相应状态代码。
修改标头
在 Header rules 子部分,您可以创建多条子规则,用于在响应中添加或修改标头。创建多个标头规则时,请使用 Rules 表顶部的向上箭头和向下箭头来更改标头规则的顺序。该顺序会影响修改后的响应标头,因为系统会按照表中列出的顺序应用标头规则。
如需添加标头规则,请在 Header rules 部分中点击 +。
如需添加标头,请在 Add new header 部分中输入标头名称和标头值。
如需修改标头,请前往 Edit existing header 标签页,然后指定您要查找的标头名称或标头值。输入替换后的标头名称或标头值。
修改响应正文
您还可以创建子规则来修改响应正文。您可以选择“Find and Replace”以查找并替换正文的某一部分,该操作将替换正文中的第一个实例;或者,您也可以选择 Replace entire body 以替换全部正文内容。
与标头规则类似,您也可以创建多个正文规则,并按照它们在表中列出的顺序应用这些规则。
在布局检查器中自动连接到前台进程
布局检查器现在自动连接到虚拟或物理设备上的应用程序。具体而言,布局检查器会自动连接到在连接设备的前台运行的可调试进程。
App Quality Insights 更新
Android Studio Flamingo Canary 5 及更高版本引入了多项 App Quality Insights 新功能,有助于您重点关注高优先级问题并与开发团队开展协作。
新的过滤器和过滤器搜索功能
为帮助您发现最重要的问题,您现在可以按以下属性进行过滤。每个过滤器都会按事件数量排序,这样您就能知道哪个过滤中发生的事件最多。
- Android 平台版本
- 设备品牌和型号
-
Crashlytics Signal:Issues 面板中的相关问题旁边也会显示信号图标,以便您并排查看数量和信号。如果某个问题在过去已关闭,并再次出现在新版应用中,则会被视为“回归”问题。
-
应用版本:此过滤条器现在包含更高级别的 Play 轨道过滤器,您可使用该过滤器自动选择正式版轨道、开放式测试轨道、封闭式测试轨道和/或内部测试轨道。
此外,您现在可以搜索包含各种选项的过滤器,以便您更快地自定义视图,而无需滚动浏览所有菜单选项。
直接从 Android Studio 为问题添加注解和关闭问题
为了让您更轻松地与团队成员协作,您现在可以直接在 App Quality Insights 工具窗口中执行以下操作:
-
关闭问题。如需关闭问题,请点击堆栈轨迹主面板中的 Close 按钮。最近关闭的问题会显示在 Issues 面板中,并带有删除线。再次点击该按钮,即可重新打开最近关闭的问题。不过,一旦刷新 App Quality Insights 工具窗口,已关闭的问题将不再显示在窗口中。
-
阅读问题备注并将其附加到问题中,以便团队成员能够在 Firebase 控制台中看到这些信息。如需撰写有关问题的备注,请选择相应问题并打开 Notes 面板。您必须拥有对 Crashlytics 项目的写入权限,才能写入备注。包含备注的问题会在 Issues 面板中出现“Notes”图标
如果您刚开始接触 App Quality Insights,并且想进一步了解该工具,请参阅早期版本说明。
在离线状态下利用有限功能进行调查
从 Android Studio Flamingo Canary 8 开始,您可以在离线状态下在 App Quality Insights 工具窗口中执行某些操作。如果您发出了新请求(例如点击 Refresh),而 Android Studio 无法与 Crashlytics 通信,则您可以通过 App Quality Insights 窗口进入离线模式。
在这种模式下,您可以继续根据缓存数据调查问题和最新事件。部分功能(如更改某些过滤器或关闭问题)无法使用。如需重新尝试连接到 Crashlytics 并返回到在线状态,请点击 Reconnect。
一键式自动可分析 build 及运行
Android Studio Flamingo 和 AGP 7.3 引入了一键式自动可分析 build,可让您更轻松地配置可分析应用并对其进行性能分析。此功能需要搭载 API 级别 29 或更高级别的虚拟或实体测试设备。如需使用该功能,请点击 Profile app 图标旁边的箭头,然后从两个选项中进行选择:
-
Profile 'app' with low overhead 会启动 CPU 性能分析器和内存分析器。在内存分析器中,只有 Record Native Allocations 为启用状态。
-
Profile 'app' with complete data 会启动 CPU 性能分析器、内存分析器和能耗性能分析器。
如需详细了解如何以最低性能成本测试应用,请参阅可分析应用。
为 SDK 扩展提供 lint 支持
Android Studio Flamingo 为 SDK 扩展提供了 lint 支持。您可以使用此功能更新 lint 工具的 API 检查,以便在 API 向后移植以及在引入新的 API 接口(例如 Android Privacy Sandbox)的情况下正确执行 API 访问。
Lint 工具的 API 检查可确保您的代码仅使用由 minSdkVersion
控制或经 SDK_INT
检查后提供的 API。借助 SDK 扩展程序,一个 API 可以存在于多个 SDK 中。例如,Android U 中引入的 API 也可以添加到 Android R、S 和 T 中的向后移植扩展。此外,应用可使用其清单文件根据需要指定多个 API,另有一些新的 API 可用于检查各个扩展程序是否可用。Lint 工具现在会通过相应逻辑检查所需内容与已知存在的内容是否存在重叠的情况。
最后,该工具还提供了与 API 检查相关的 Studio IDE 功能。该功能现在可以处理新 API 接口的 API 违规行为,执行必要的检查,以及登记快速修复(每个可用的 API 接口可登记一次)。
IntelliJ IDEA 2022.2 平台更新
Android Studio Flamingo Canary 1 包含 IntelliJ IDEA 2022.2 更新,该更新改进了 IDE 体验。如需详细了解相关变更,请参阅 IntelliJ IDEA 2022.2 版本说明。
与 JDK 17 捆绑的 Android Studio
从 Android Studio Flamingo Canary 3 开始,Studio IDE 已与 JDK 17 捆绑在一起。如果 Android Studio 配置为使用嵌入式 JDK,则新项目将使用最新的稳定版 Android Gradle 插件和 JDK 17。不过,现有项目可能会中断,并且您可能需要手动将 JDK 设置为兼容的版本。
如需了解详情,请参阅设置 JDK 版本。