Android Studio 4.2(2021 年 4 月)
Android Studio 4.2 是一个主要版本,包含各种新功能和改进。
4.2.2(2021 年 6 月)
此次小幅更新包含多项 bug 修复。如需查看重要的 bug 修复列表,请参阅 版本更新博客上的相关博文。
4.2.1(2021 年 5 月)
此次小幅更新捆绑了 Kotlin 插件 1.5.0,并包含多项 bug 修复。如需查看重要的 bug 修复列表,请参阅 版本更新博客上的相关博文。
Android Gradle plugin 4.2.0
最新版本的 Android Gradle 插件包含许多更新。如需了解详情,请参阅完整的 Android Gradle 插件版本说明。
Gradle 兼容性和配置更改
在 Android Studio 中运行时,Gradle 构建工具会使用 Studio 捆绑的 JDK。在之前的版本中,Studio 捆绑的是 JDK 8。但在 4.2 中,捆绑的是 JDK 11。使用新的捆绑 JDK 运行 Gradle 时,由于垃圾回收器的更改,可能会导致一些不兼容性或影响 JVM 性能。这些问题在AGP 版本说明中有所描述。
优化 Gradle 同步时间的选项
为提高 Gradle 同步性能,Android Studio 在同步期间会跳过构建任务列表。这样可以加快 Gradle 同步速度,并提高超大型项目的界面响应能力。此选项在 Android Studio 4.2 中默认启用。要将其关闭,请依次选择 File > Settings > Experimental(在 Mac 上依次选择 Preferences > Experimental),然后取消选中 Do not build Gradle task list during Gradle sync。
数据库检查器
查询编辑器改进
此数据库检查器包含一些改进,可帮助您编写和执行自定义 SQL 语句。打开检查器并打开新查询标签页后,您会注意到一个更大且可调整大小的编辑器界面,可用于编写和格式化查询,如下所示。
此外,我们现在提供了您之前查询的历史记录。当您点击显示查询历史记录 {: .inline-icon} 按钮时,您应该会看到之前针对当前选定数据库运行的查询列表。点击列表中的查询以在编辑器中预览完整查询,然后按 Enter 键将其复制到编辑器中。然后,点击 Run 以执行该语句。
离线模式
在早期版本的 Android Studio 中,在使用数据库检查器时断开与应用进程的连接会导致检查器及其数据关闭。在 Android Studio 4.2 中,我们增加了在进程断开连接后仍可继续检查应用数据库的功能,从而更轻松地在崩溃后调试应用。
发生断开连接时,数据库检查器会下载您的数据库,然后在离线模式下提供给您。在离线状态下,您可以打开表格并运行查询。
请记住,当您重新连接到实时应用进程时,数据库检查器会返回到实时模式,并且仅显示设备上的数据。也就是说,离线模式下显示的数据在重新连接到应用进程时不会保留。因此,数据库检查器在离线模式下不允许编辑或运行修改语句。
AGP 升级助手
新的 Android Gradle 插件升级助手可帮助您更新项目的 AGP 版本。
此工具基于现有的 AGP 升级功能构建,可指导您完成项目范围的更新/重构,并包含更新预览,有助于在执行 AGP 升级之前预防潜在的破坏性更改。
系统跟踪:改进了内存和图形的指标
在 CPU 性能分析器中,系统跟踪功能现在包含用于分析应用性能的新指标,其中包括以下内容:
-
事件表。列出当前选定线程中的所有跟踪事件。
-
BufferQueue。在“显示”部分,此新轨道会显示应用的 Surface BufferQueue 的缓冲区数量(0、1 或 2),以帮助您了解图片缓冲区在 Android 图形组件之间移动时的状态。
-
CPU 频率。在“CPU 内核”部分,此新轨道按内核显示 CPU 频率,指示每个内核的工作负载。
-
进程内存 (RSS)。此新窗口显示应用当前使用的物理内存量。
如需了解详情,请参阅使用 CPU 性能分析器检查 CPU 活动。
新的布局检查器刷新操作
Android Studio 4.0 中引入的布局检查器旨在实时检查运行中应用的界面堆栈。但是,您可能不希望布局检查器立即反映应用中发生的情况,因为您可能希望在特定时间点检查应用布局的快照,或者最大限度地减少实时更新对应用性能的影响。
如需手动加载应用界面数据的快照,请先停用实时更新选项。然后,您可以点击刷新 {:.inline-icon} 按钮,获取界面堆栈的新快照进行检查。布局检查器现在会记住您在会话之间保持实时更新启用或停用的偏好设置。
支持 Safe Args
Safe Args 是一个 Gradle 插件,可生成简单的对象和构建器类,用于实现类型安全的导航和访问任何相关参数。Android Studio 现在提供了更丰富的 Safe Args 支持,如下所述:
- Directions、Args 以及各种构建器类的自动补全功能
- 支持 Java 和 Kotlin 的 Safe Args 插件
- 从源文件到 XML 的导航
R8 retrace 现已在命令行工具中提供
R8 retrace 是命令行工具 4.0 版本中提供的一款独立工具,可用于从混淆的堆栈跟踪中获取原始堆栈跟踪。
您可以使用 SDK Manager 下载此软件包,它会将 R8 retrace 安装到 android_sdk/cmdline-tools
。或者,您也可以下载独立的命令行工具软件包。
如需了解用法信息,请参阅用户指南中的 R8 retrace。
部署到多台设备
为了简化跨设备和 API 级别的应用测试,您现在可以按照以下步骤同时将应用部署到多台设备或模拟器上:
- 在目标设备下拉菜单(IDE 顶部中心位置)中选择 Select Multiple Devices。
- 选择目标设备,然后点击 OK。
- 运行您的应用。
针对功能模块的新 removable
设置
Android Gradle plugin 4.2 使用 bundletool
1.0.0,它为使用功能模块的应用带来了行为更改:指定为 dist:install-time
但未明确标记为 dist:removable
的任何功能模块将默认变为不可移除。此新设置优化了安装时模块与基础模块的融合,可能会提高某些应用的应用性能。
如需使功能模块保持可移除,请在您要卸载的任何模块上设置 dist:removable="true"
。
如需详细了解此新设置,请参阅功能模块清单文档中关于 dist:removable
标记的文档。
应用更改
为了帮助您在迭代应用时提高效率,我们为运行 Android 11 或更高版本的设备上的“应用更改”功能进行了以下改进:
支持额外的代码更改
对于运行 Android 11 或更高版本的设备,您现在可以添加静态 final 基本字段,然后点击应用代码更改 或应用更改并重启 Activity
,将这些更改部署到正在运行的应用。
您现在还可以添加资源,然后点击应用更改并重启 Activity ,将这些更改部署到 Android 11 设备上正在运行的应用。
更新了“新建项目”和“新建模块”向导
新建项目和新建模块向导已更新,以使其更容易浏览、选择模板以及输入有关新项目或模块的信息。
新建模块向导中的导入 .JAR/.AAR 软件包选项也已移除。如需将 JAR 或 AAR 导入到您的项目,请改为使用项目结构对话框。
Kotlin 1.4.31
Android Studio 4.2 捆绑了 Kotlin 1.4.31。请参阅Kotlin 1.4.0 更新日志,查看主要更改。
ANDROID_SDK_HOME
环境变量已弃用
环境变量 ANDROID_SDK_HOME
已弃用,已替换为 ANDROID_PREFS_ROOT
。如需了解详情,请参阅模拟器环境变量。
Android Studio 4.2 的已知问题
本部分介绍了 Android Studio 4.2 中存在的已知问题。如需查看完整列表,请访问已知问题页面。
Android Studio 4.2.0 生成的项目使用错误的 Kotlin 版本:"1.5.0-release-764"
如果您使用的是 Android Studio 4.2.0 并且已升级到 Kotlin 插件 1.5.0,则 Studio 创建的新 Kotlin 项目将由于以下 Gradle 同步错误而无法构建:
Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.
作为临时解决方法,请将项目 build.gradle
文件中的 1.5.0-release-764
替换为 1.5.0
。
对 key 和 keystore 使用不同密码时出错
从版本 4.2 开始,Android Studio 现在在 JDK 11 上运行。此更新会导致与签名密钥相关的底层行为更改。
导航到 Build > Generate Signed Bundle / APK 并尝试为应用包或 APK 配置应用签名时,为密钥和密钥库输入不同的密码可能会导致以下错误:
Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores
为解决此问题,请为 key 和 keystore 输入相同的密码。
安装 4.2 版本后 Android Studio 无法启动
Studio 会尝试导入之前的 .vmoptions 文件,并对其进行清理以使其与 JDK 11 使用的垃圾回收器兼容。如果此过程失败,则对于在 .vmoptions 文件中设置了自定义 VM 选项的某些用户,IDE 可能无法启动。
为解决此问题,我们建议注释掉 .vmoptions 文件中的自定义选项(使用 #
字符)。.vmoptions 文件可在以下位置找到:
Windows
C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions
macOS
~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions
Linux
~/.config/Google/AndroidStudio4.2/studio64.vmoptions
如果在尝试此临时解决方法后 Studio 仍无法启动,请参阅下方的升级后 Studio 无法启动。