Android Gradle 插件和 Android Studio 兼容性
Android Studio 构建系统基于 Gradle,并且 Android Gradle 插件 (AGP) 添加了一些特定于构建 Android 应用程序的功能。下表列出了每个版本的 Android Studio 所需的 AGP 版本。
如果特定版本的 Android Studio 不支持您的项目,您仍然可以使用 旧版本的 Android Studio打开并更新您的项目。
Android Studio版本 | 所需的 AGP 版本 |
---|---|
水母| 2023年3月1日 | 3.2-8.4 |
鬣蜥 | 2023年2月1日 | 3.2-8.3 |
刺猬| 2023年1月1日 | 3.2-8.2 |
长颈鹿 | 2022年3月1日 | 3.2-8.1 |
火烈鸟 | 2022年2月1日 | 3.2-8.0 |
电鳗| 2022年1月1日 | 3.2-7.4 |
Android API 级别工具的最低版本
Android Studio 和 AGP 的最低版本支持特定的 API 级别。使用低于项目要求的 Android Studio 或 AGP 版本targetSdk
可能compileSdk
会导致意外问题。我们建议使用最新预览版的 Android Studio 和 AGP 来处理面向 Android 操作系统预览版的项目。您可以 安装 Android Studio 的预览版和稳定版。
Android Studio和AGP的最低版本如下:
API级别 | 最低 Android Studio 版本 | 最低 AGP 版本 |
---|---|---|
香草冰淇淋 预览 | 水母| 2023年3月1日 | 8.4 |
34 | 刺猬| 2023年1月1日 | 8.1.1 |
33 | 火烈鸟 | 2022年2月1日 | 7.2 |
App Quality Insights 中的版本控制系统集成
App Quality Insights现在允许您从 Crashlytics 堆栈跟踪导航到崩溃发生时的相关代码。AGP 将 git commit 哈希数据附加到崩溃报告中,这有助于 Android Studio 导航到您的代码并显示发生问题的版本中的情况。当您在App Quality Insights中查看崩溃报告时 ,您可以选择导航到当前 git checkout 中的代码行,或查看当前 checkout 与生成崩溃的代码库版本之间的差异。
注意:该功能目前仅支持使用git进行版本控制。
要将版本控制系统与App Quality Insights集成,您需要满足以下最低要求:
- Android Studio Iguana 的最新 Canary 版本
- Android Gradle 插件 8.3 的最新 Alpha 版本
- Crashlytics SDK v18.3.7 (或Firebase Android 物料清单 v32.0.0)
要对可调试构建类型使用版本控制集成,请 vcsInfo
在模块级构建文件中启用该标志。对于发布(不可调试)版本,默认情况下启用该标志。
android {buildTypes {debug {vcsInfo {include true}}}
}
在 App Quality Insights 中查看 Crashlytics 崩溃变体
为了帮助您分析崩溃的根本原因,您现在可以使用 App Quality Insights 按问题变体查看事件,或共享相似堆栈跟踪的事件组。要查看崩溃报告的每个变体中的事件,请从下拉列表中选择一个变体。要聚合所有变体的信息,请选择 全部。
编写 UI 检查
为了帮助开发人员在 Jetpack Compose 中构建更具适应性和可访问性的 UI,Android Studio Iguana Canary 5 在 Compose Preview 中引入了新的 UI 检查模式。此功能的工作原理类似于 视图的可视化检查 和可访问性检查集成。当您激活 Compose UI 检查模式时,Android Studio 会自动审核您的 Compose UI 并检查不同屏幕尺寸上的自适应和可访问性问题,例如大屏幕上的文本拉伸或颜色对比度低。该模式会突出显示在不同预览配置中发现的问题,并将它们列在问题面板中。
今天通过单击 Compose Preview 上的 UI Check 按钮来尝试此功能 并发送您的反馈:
UI 检查模式的已知问题:
- 问题面板中选定的问题可能会失去焦点
- “抑制规则”不起作用
Compose 预览的渐进式渲染
Android Studio Iguana Canary 3 在 Compose Preview 中引入了渐进式渲染。作为提高预览性能的持续努力的一部分,现在对于任何不在视图中的预览,我们故意降低其渲染质量以节省所使用的内存。
开发此功能的目的是通过能够在文件中同时处理更多预览来进一步提高预览的可用性。今天就尝试一下并提交您的反馈。
IntelliJ IDEA 2023 .2 平台更新
Android Studio Iguana 包含 IntelliJ IDEA 2023.2 更新,改善了 Studio IDE 体验。有关更改的详细信息,请参阅 IntelliJ IDEA 2023.2 发行说明。
人工智能助手
在此版本中,我们引入了 IntelliJ IDEA 的一项重要补充 – AI Assistant。借助当前的一系列人工智能驱动功能,AI Assistant 提供集成的人工智能聊天功能,可以自动为您编写文档注释、建议名称、生成提交消息等。
AI Assistant 由 JetBrains AI 服务提供支持,目前可以将您连接到 OpenAI,将来还将包括其他语言模型提供商。要访问助手的 AI 功能,您需要安装 AI Assistant 插件并使用 JetBrains 帐户登录 JetBrains AI 服务。JetBrains AI 服务的可用性最初可能会有所不同。有关 AI Assistant 的更多信息以及如何访问它的说明,请参阅 此博客文章。
编辑器内的性能提示
在 IntelliJ IDEA 2023.2 中,我们增强了 IntelliJ Profiler,为您的应用程序性能提供更有价值且易于解释的见解。新的编辑器内提示提供了一种逐行分析代码性能的快速方法,帮助您更快地识别和解决问题。编辑器装订线中的颜色编码注释突出显示了关键方法,使您能够专注于性能瓶颈。这意味着您不再需要使用火焰图和调用树视图执行彻底、耗时的分析 。在此博文中了解更多信息 。
Search Everywhere中的文本搜索
Search Everywhere ( Double Shift) 主要用于搜索文件、类、方法、操作和设置。通过此更新,它现在包含类似于在文件中查找的文本搜索功能。现在,当给定查询很少或没有其他搜索结果可用时,会显示文本搜索结果。该功能默认启用,可以在 “设置/首选项 |”中进行管理。高级设置 | 到处搜索。
新 UI 中的彩色项目标题
IntelliJ IDEA 2023.2 引入了彩色标题来简化多个打开项目之间的导航。现在,您可以为每个项目分配唯一的颜色和图标,使它们在工作区中更容易区分。标题现在默认带有预定义的颜色,但您可以自定义它们。要为您的项目设置新颜色,请首先右键单击标题以访问上下文菜单。然后选择 “更改项目颜色”选项,并从建议列表或浏览调色板中选择所需的颜色。如果您想禁用此功能,只需在上下文菜单中 取消选择“显示项目渐变”选项即可。
基线配置文件模块向导
从 Android Studio Iguana 开始,您可以 使用新模块向导(文件 > 新建 > 新建模块)中的基线配置文件生成器模板为您的应用生成基线配置文件。
此模板设置您的项目,以便它可以支持基线配置文件。它使用新的 Baseline Profiles Gradle 插件,该插件可以通过一项 Gradle 任务以所需的方式自动完成项目设置过程。
该模板还创建一个运行配置,让您只需从“选择运行/调试配置” 下拉列表中单击一下即可生成基线配置文件。
使用 Espresso 设备 API 测试配置更改
当设备发生常见配置更改(例如旋转和屏幕展开)时,使用 Espresso 设备 API 来测试您的应用程序。Espresso 设备 API 允许您在虚拟设备上模拟这些配置更改并同步执行测试,因此一次仅发生一个 UI 操作或断言,并且您的测试结果更加可靠。详细了解如何使用 Espresso 编写 UI 测试。
要使用 Espresso 设备 API,您需要满足以下条件:
- Android Studio Iguana 或更高版本
- Android Gradle 插件 8.3 或更高版本
- Android 模拟器 33.1.10 或更高版本
- 运行 API 级别 24 或更高级别的 Android 虚拟设备
为 Espresso 设备 API 设置项目
要设置您的项目以支持 Espresso 设备 API,请执行以下操作:
-
要让测试将命令传递到测试设备,请 向源集中的清单文件添加
INTERNET
和权限:ACCESS_NETWORK_STATEandroidTest
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permissions.ACCESS_NETWORK_STATE" />
-
启用文件
enableEmulatorControl
中的实验标志gradle.properties
:android.experimental.androidTest.enableEmulatorControl=true
-
emulatorControl
在模块级构建脚本中启用该选项:testOptions {emulatorControl {enable = true}}
-
在模块级构建脚本中,将 Espresso 设备库导入到您的项目中:
dependencies {androidTestImplementation 'androidx.test.espresso:espresso-device:3.5.1'}