前几天 Android Studio 3.5 正式版发布,这个版本专注于改进 IDE 的三个主要方面: 系统运行状况,功能优化和修复Bug

首先他们修复了编辑 XML 代码时,如果从菜单栏中选择重新格式化代码,则 IDE 可能会应用不正确的代码样式,更新之后重置相应的 Android 代码样式就好了…

具体重置操作( 上个版本没有出现这个 Bug 就没必要重置了,这里就是提一下他们修复的 Bug 我也是根据他们官网更新说明理解而来 ):文件 > 设置 > 编辑器 > 代码样式 > XML > 设定 > 预定义样式 > Android

接下来我们看看这次改善系统运行状况的优化,毕竟 Android Studio 有些地方确实挺吃内存的…

如果 Android Studio 检测到我们可以通过增加操作系统应为 Android Studio 进程分配的最大 RAM(例如核心 IDE,Gradle 守护程序和 Kotlin 守护程序)来提高性能,则会通知我们。然后可以通过单击通知中的操作链接接受建议的设置,也可以通过选择文件 > 设置( 或Mac OS上的Android Studio > 首选项 )手动调整这些设置,然后在外观和行为 >下找到 内存设置 部分。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

选择 Actions

Android Studio 中的内存问题有时难以重现和报告,为帮助解决此问题,Android Studio允许我们通过单击菜单栏中的 帮助 > 分析内存使用情况 来生成内存使用情况报告。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

然后就是关于 Windows:防病毒文件I / O优化

Android Studio 现在会自动检查某些项目目录是否被排除在实时防病毒扫描之外。如果可以进行调整以提高构建性能,Android Studio 会通知并提供有关如何优化防病毒配置的说明。

好了,到了探索新功能的时候了

首先 Apply Changes 可以将代码和资源更改推送到正在运行的应用程序,而无需重新启动应用程序 - 在某些情况下,无需重新启动当前活动。Apply Changes 实现了一种全新的方法来保护应用的状态。与重新编写APK的字节码的 Instant Run 不同,Apply Changes 通过利用 Android 8.0(API级别26)或更高版本中支持的运行时检测来动态重新定义类。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

这个就是热刷新技术,这可是一个好东西,不过需要 Android 8 或以上版本的模拟器或真机才能玩耍咯…

这次模拟器入口搬了出来个人感觉方便了一些,IDE 有一个新的下拉菜单,可以快速选择要将应用部署到哪个设备。此菜单还包含一个新选项,可以一次在多个设备上运行您的应用。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

改进了 Gradle 同步和缓存检测 现在,IDE 可以更好地检测 Gradle 何时在减少硬盘消耗时定期清除构建缓存。在以前的版本中,此状态导致IDE报告缺少的依赖项和Gradle 同步失败。现在,IDE 只需根据需要下载依赖项,以确保 Gradle 同步成功完成。( 这个应该是一个优化,手动狗头 )

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

改进了构建错误输出,Build 窗口为以下构建过程提供了更好的错误报告,例如指向文件的链接和报告错误的行:

  • AAPT compilation and linking
  • R8 and ProGuard
  • Dexing
  • Resource merging
  • XML file parsing
  • Javac, Kotlinc, and CMake compilation

这个好像不错,毕竟有时候看 Build 错误确实一蒙一蒙的,特别是对于我这个小白…

Android Studio 3.5 包括对布局可视化,管理和交互的几项改进。

使用时,属性 面板中的 ConstraintLayout 约束 部分 列出了所选UI组件的约束关系。我们可以从设计图面或约束列表中选择约束,以突出显示两个区域中的约束。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

同样,现在可以通过选择约束并按键来删除约束 Delete。还可以通过按住 Control 键( Command 在macOS上)并单击约束锚点来删除约束。请注意,当按住 ControlCommand 键并将鼠标悬停在锚点上时,任何关联的约束都会变为红色,表示可以单击以删除它们。

选择视图后,可以通过单击 属性 面板的 约束 小组件部分中的任何+图标来创建约束 ,如下图所示。当创建新约束时,布局编辑器现在选择并突出显示约束,为刚刚添加的内容提供即时可视反馈。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

创建约束时,布局编辑器现在仅显示您可以约束的合格锚点。以前,布局编辑器会突出显示所有视图上的所有锚点,无论是否可以约束它们。此外,蓝色叠加层现在突出显示约束的目标。在尝试约束与另一个重叠的组件时,此突出显示特别有用。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

创建约束时,布局编辑器现在仅显示您可以约束的合格锚点。以前,布局编辑器会突出显示所有视图上的所有锚点,无论您是否可以约束它们。此外,蓝色叠加层现在突出显示约束

除上述更新外,Android Studio 3.5还包含以下布局编辑器改进:

  • 该约束的 Widget 和默认保证金下拉现在允许您使用维度资源的利润。
  • 在“布局编辑器”工具栏中,已更新确定设计图面大小的设备列表。此外,调整大小时的捕捉行为已得到改进,设计图面上的调整大小手柄现在始终可见。调整大小时,会出现显示常见设备大小的新叠加层。
  • 布局编辑器具有新的配色方案,可提高一致性并降低组件,文本和约束之间的对比度。
  • 蓝图模式现在包括对未显示文本的某些组件的文本支持。

除了 为数据绑定添加增量注释处理支持之外,IDE还可以在XML中创建数据绑定表达式时改进智能编辑器功能和性能。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

Android Studio 3.4 上的代码编辑器性能比较卡顿

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

改进了Android Studio 3.5 上的代码编辑性能更好

改进了对C / C ++项目的支持 Android Studio 3.5 包含一些改进,可以改进对C / C ++项目的支持。

单变量同步的 Build Variants 面板改进,现在可以在Build Variants面板中指定活动构建变体和活动ABI 。此功能简化了每个模块的构建配置,还可以提高Gradle同步性能。

一起看看 Android Studio 3.5 更新了什么吧-天真的小窝

现在可以并排使用 NDK 的多个版本。此功能在配置项目时提供了更大的灵活性 - 例如,如果项目在同一台计算机上使用不同版本的 NDK 。

如果项目使用 Android Gradle 插件 3.5.0 或更高版本,还可以指定项目中每个模块应使用的 NDK 版本。可以使用此功能创建可重现的构建,并减轻 NDK 版本与Android Gradle 插件之间的不兼容性。

然后还有对 Chrome OS 的支持,Android Studio 现在正式支持 Chrome 操作系统设备,例如 HP Chromebook x360 14,Acer Chromebook 13 / Spin 13 以及可以在系统要求中阅读的其他设备。要开始使用,请 在兼容的 Chrome 操作系统设备上下载 Android Studio,然后按照安装说明进行操作。

动态功能模块的条件传递条件,传递允许您在应用安装期间自动下载动态功能模块的某些设备配置要求。例如,您可以配置动态功能模块,其中包含增强现实(AR)功能,可在应用安装时仅为支持 AR 的设备提供。

此交付机制目前支持在 app 安装时根据以下设备配置控制模块下载:

  • 设备硬件和软件功能,包括 OpenGL ES 版本
  • 用户所在国家
  • API 级别

如果设备不满足您指定的所有要求,则不会在应用安装时下载该模块。但是,您的应用程序稍后可能会 要求使用 Play 核心库按需下载模块。要了解更多信息,请阅读 配置条件传递。

核心 Android Studio IDE 已经更新了 IntelliJ IDEA 到 2019.1 版本的改进,例如主题定制。

Android Studio 附带的最后一个 IntelliJ 版本是 2018.3.4。有关此版本的 Android Studio 累积包含的其他 IntelliJ 版本的改进的更多信息

Android Gradle 插件 3.5.0 中的新功能的信息,例如对增量注释处理和 chacheable单元测试的改进支持