Android Studio 3.3(2019 年 1 月)
Android Studio 3.3 是一个主要版本,包含各种新功能和改进。
3.3.2(2019 年 3 月)
此小版本更新包含各种错误修复和性能改进。要查看重要错误修复列表,请阅读 版本更新博客上的相关帖子。
3.3.1(2019 年 2 月)
此小版本更新包含各种错误修复和性能改进。
IntelliJ IDEA 2018.2.2
通过2018.2.2 版本,核心 Android Studio IDE 已通过 IntelliJ IDEA 的改进进行了更新。
Android Gradle 插件更新
有关 Android Gradle 插件新增功能的信息,请参阅其发行说明。
导航编辑器
导航编辑器允许您通过使用导航架构组件快速可视化并构建应用中的导航。
有关更多信息,请参阅使用导航架构组件实现导航。
删除未使用的 Android Studio 目录
首次运行 Android Studio 的主要版本时,它会查找包含缓存、设置、索引和日志的目录,这些目录对应于找不到相应安装的 Android Studio 版本。然后,**删除未使用的 Android Studio 目录**对话框将显示这些未使用目录的位置、大小和上次修改时间,并提供删除它们的选项。
Android Studio 考虑要删除的目录列在下面
- Linux:
~/.AndroidStudio[Preview]X.Y
- Mac:
~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]X.Y
- Windows:
%USER%.AndroidStudio[Preview]X.Y
Lint 改进
从 Gradle 调用时,Lint 的速度显著提高,大型项目可以预期 Lint 的运行速度提高多达四倍。
创建新项目向导
创建新项目向导具有新的外观,并包含有助于简化创建新的 Android Studio 项目的更新。
有关更多信息,请参阅创建项目。
性能分析器更新
Android Studio 3.3 包含对几个单独性能分析器的更新。
改进的性能
根据用户反馈,使用分析器的渲染性能已得到大幅提升。请继续提供反馈,特别是如果您仍然遇到性能问题。
分析器内存分配跟踪选项
为了提高分析期间的应用性能,内存分析器现在默认情况下会定期采样内存分配。如果需要,您可以在Android 8.0(API级别26)或更高版本设备上进行测试时,使用**分配跟踪**下拉菜单更改此行为。
使用分配跟踪下拉菜单,您可以选择以下模式:
-
完全:捕获所有对象内存分配。请注意,如果您拥有一个分配大量对象的应用,则在分析期间可能会遇到严重的性能问题。
-
采样:捕获对象内存分配的周期性样本。这是默认行为,对分析期间的应用性能影响较小。对于在短时间内分配大量对象的应用,您可能会遇到一些性能问题。
-
关闭:关闭内存分配。如果尚未选择,则在进行CPU录制时会自动启用此模式,并在录制完成后恢复到之前的设置。您可以在CPU录制配置对话框中更改此行为。
跟踪影响Java对象和JNI引用。
检查帧渲染数据
在CPU分析器中,您现在可以检查Java应用在主UI线程和RenderThread上渲染每一帧所需的时间。在调查导致UI卡顿和帧率低的瓶颈时,此数据可能很有用。例如,每个渲染时间超过保持流畅帧率所需的16毫秒的帧都将以红色显示。
要查看帧渲染数据,请使用允许您跟踪系统调用的配置录制跟踪。录制跟踪后,在录制的时间轴上“帧(FRAMES)”部分查找有关每一帧的信息,如下所示。
要了解有关调查和修复帧率问题的更多信息,请阅读缓慢渲染。
事件时间轴中的片段
事件时间轴现在显示片段何时附加和分离。此外,当您将鼠标悬停在片段上时,工具提示会显示片段状态。
在网络分析器中查看连接负载的格式化文本
以前,网络分析器仅显示连接负载的原始文本。Android Studio 3.3现在默认情况下会格式化某些文本类型,包括JSON、XML和HTML。在**响应**和**请求**选项卡中,单击**查看解析结果**链接以显示格式化文本,单击**查看源代码**链接以显示原始文本。
有关更多信息,请参阅使用网络分析器检查网络流量。
SDK组件自动下载
当您的项目需要来自SDK平台、NDK或CMake的SDK组件时,Gradle现在会尝试自动下载所需的软件包,前提是您之前已使用SDK Manager接受了任何相关的许可协议。
有关更多信息,请参阅使用Gradle自动下载缺少的软件包。
支持Clang-Tidy
Android Studio现在包含对使用Clang-Tidy进行静态代码分析的支持,适用于包含原生代码的项目。要启用对Clang-Tidy的支持,请将您的NDK更新到r18或更高版本。
然后,您可以通过打开**设置**或**偏好设置**对话框并导航到**编辑器 > 检查 > C/C++ > 常规 > Clang-Tidy**来启用或重新启用检查。在**设置**或**偏好设置**对话框中选择此检查时,您还可以在最右侧面板的**选项**部分查看已启用和已禁用的Clang-Tidy检查列表。要启用其他检查,请将它们添加到列表中,然后单击**应用**。
要使用其他选项配置Clang-Tidy,请单击**配置Clang-Tidy检查选项**并在打开的对话框中添加它们。
删除C++自定义选项
以下选项已从**自定义C++支持**对话框中删除:
- 异常支持(-fexceptions)
- 运行时类型信息支持(-ftti)
相应行为已为通过Android Studio创建的所有项目启用。
CMake版本3.10.2
CMake版本3.10.2现在包含在SDK Manager中。请注意,Gradle默认情况下仍然使用版本3.6.0。
要指定Gradle使用的CMake版本,请将以下内容添加到模块的build.gradle
文件中:
android {
...
externalNativeBuild {
cmake {
...
version "3.10.2"
}
}
}
有关在build.gradle
中配置CMake的更多信息,请参阅手动配置Gradle。
指定最小CMake版本的新“+”语法
在主模块的build.gradle
文件中指定CMake版本时,您现在可以附加一个“+”来匹配CMake的cmake_minimum_required()
命令的行为。
警告:不建议将“+”语法与其他构建依赖项一起使用,因为动态依赖项可能会导致意外的版本更新和难以解决版本差异。
Android应用包现在支持即时应用
Android Studio现在允许您构建Android应用包,并完全支持Google Play即时应用。换句话说,您现在可以从单个Android Studio项目构建和部署已安装应用和即时体验,并将它们包含在单个Android应用包中。
如果您使用创建新项目对话框创建新的Android Studio项目,请确保选中配置您的项目 > 此项目将支持即时应用旁边的复选框。然后,Android Studio将像往常一样创建一个新的应用项目,但在您的清单中包含以下属性,以便为您的应用的基础模块添加即时应用支持:
<manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
<dist:module dist:instant="true" />
...
</manifest>
然后,您可以通过从菜单栏中选择文件 > 新建 > 新建模块,然后从创建新模块对话框中选择即时动态功能模块来创建启用即时的功能模块。请记住,创建此模块也会启用您的应用的基础模块的即时功能。
要将您的应用作为即时体验部署到本地设备,请编辑您的运行配置并选中常规 > 作为即时应用部署旁边的复选框。
单变体项目同步
将您的项目与构建配置同步是让Android Studio了解您的项目结构的重要步骤。但是,对于大型项目,此过程可能非常耗时。如果您的项目使用多个构建变体,您现在可以通过将同步限制为当前选择的变体来优化项目同步。
您需要使用Android Studio 3.3或更高版本以及Android Gradle插件3.3.0或更高版本才能启用此优化。当您满足这些要求时,IDE会在您同步项目时提示您启用此优化。此优化在新的项目中也默认启用。
要手动启用此优化,请单击文件 > 设置 > 实验性 > Gradle(在Mac上为Android Studio > 偏好设置 > 实验性 > Gradle)并选中仅同步活动变体复选框。
注意:此优化目前仅支持包含Java编程语言的项目。例如,如果IDE在您的项目中检测到Kotlin或C++代码,则它不会自动启用此优化,并且您也不应手动启用它。
有关更多信息,请参阅启用单变体项目同步。
快速反馈
如果您选择共享使用统计信息以帮助改进Android Studio,您将在IDE窗口底部的状态栏中看到这两个新图标:
只需单击最能代表您当前IDE体验的图标即可。当您这样做时,IDE会发送使用统计信息,使Android Studio团队能够更好地了解您的感受。在某些情况下,例如当您表示对IDE的体验不佳时,您将有机会提供其他反馈。
如果您尚未这样做,您可以通过打开**设置**对话框(在Mac上为**偏好设置**),导航到**外观和行为 > 系统设置 > 数据共享**并选中**将使用统计信息发送给Google**来启用共享使用统计信息。