Android Studio 4.0 正式版发布
作者 / Adarsh Fernando, Product Manager
即便在如今这个变幻莫测的
Android Studio 4.0
https://developer.android.google.cn/studio
腾讯视频链接
https://v.qq.com/x/page/q097904jf85.html
Bilibili 视频链接
https://www.bilibili.com/video/BV1cv411679P/
设计
MotionLayout API
https://developer.android.google.cn/training/constraint-layout/motionlayout
开发者官网: Motion Editor
http://developer.android.google.cn/studio/write/motion-editor
在主菜单中依次选择 View > Tool Windows > Layout Inspector 来使用 Layout Inspector。如果您的应用是部署到 API 等级 29 或以上的设备,则可以使用到更丰富的功能,比如随着视图变化动态更新的布局层次结构、帮助您更好了解资源取值解析的详细视图属性信息、以及可以展示运行时 UI 结构的实时 3D 模型。您可以尽情在应用中导航、触发动画和视图转场,在这同时依然能精确调试 UI,让每一个像素都尽如人意。前往《Android Studio 4.0+ 中新的 UI 层次结构调试工具》了解更多。
在为多种硬件配置、屏幕尺寸和分辨率开发应用时,您需要确保在 UI 中做出的每一处修改都能在各个屏幕上完美展现。通过 Layout Validation 窗口,您可以同时预览 UI 在不同屏幕、不同配置中的呈现结果,从而轻松让应用适配好这些设备。只需点击 IDE 右上角的 Layout Validation 标签即可打开本窗口。
开发与分析
CPU Profiler 的设计目的是为您呈现应用中线程活动以及跟踪数据的丰富信息。开发者们在反馈中希望我们让这个工具的 UI 导航起来更为直观,以及让其中的数据更易于解读,于是我们在这个版本中带来了新的界面来回应大家的需求。在 Android Studio 4.0 中,CPU 活动记录从分析器的主时间轴中分离出来,并成组展现,以便于分析。您可以上下移动分组,也可以通过拖放操作重新排列组内的项目,从而打造更定制化的呈现布局。
CPU Profiler
https://developer.android.google.cn/studio/profile/cpu-profiler
并排显示使得分析更加轻松,您现在可以在 Thread Activity 时间轴中查看所有线程活动 (包括方法、函数和事件),以及使用新加入的导航快捷键在数据间移动——如使用 W/A/S/D 四键进行精细的缩放和平移。我们还重新设计了 System Trace 界面,用不同的颜色来区分显示事件,从而在视觉上更加醒目。在线程排序方面,更繁忙的线程会优先展示,帮助您专注于所选线程中的数据。最后,在我们投入资源改善 CPU Profiler 的质量后,我们发现自 Android Studio 3.6 以来用户报告的记录错误率有了明显下降。本次更新还带来了更多值得尝试的改进,前往开发者官网了解更多。
开发者官网: CPU Profiler 的改进
http://developer.android.google.cn/studio/releases#cpu-profiler-upgrades
编写代码缩减规则时的智能编辑器功能
我们在 Android Gradle 插件 3.4.0 中引入了 R8,使得字节码转换 (desugaring)、缩减、混淆和 dex 处理能一步到位,这让构建性能得到了显著的提升。在创建 R8 的规则文件时,Android Studio 现在提供了智能编辑器功能,包括语法高亮、补全以及错误检查等。编辑器还与您的 Android 项目集成,为所有的类、方法和字段提供完整的符号补全,并提供快速导航和重构功能。
Android Studio IDE 核心已经整合了 IntelliJ IDEA 2019.3 和 2019.3.3 版本的更新。这些更新主要用于提升 IDE 整体的质量和性能。
IntelliJ IDEA 2019.3 https://blog.jetbrains.com/idea/2019/11/intellij-idea-2019-3-better-performance-and-quality/ IntelliJ IDEA 2019.3.3 https://blog.jetbrains.com/idea/2020/02/intellij-idea-2019-3-3-is-out/
为 C++ 提供 Clangd 支持
Clangd https://clangd.llvm.org/
构建
Android Gradle 插件 4.0.0 通过使用 Java 8 API (无需考虑您应用的最低 API 级别) 为 Android Studio 带来了 Build Analyzer 功能,并支持在动态功能模块之间创造功能对功能的依赖性。完整的更新列表请查看 Android Gradle 插件 4.0.0 版本说明。
Android Gradle 插件 4.0.0 版本说明
http://developer.android.google.cn/studio/releases/gradle-plugin#4-0-0
Build Analyzer
△ 使用 Build Analyzer 发现构建性能瓶颈
开发者官网: Build Analyzer http://developer.android.google.cn/studio/build/build-analyzer
开发者官网: 使用 Java 8 API http://developer.android.google.cn/studio/write/java8-support
△ 功能对功能的依赖性
开发者官网: 功能对功能的依赖性 http://developer.android.google.cn/studio/releases#4-0-0-feature-plugin
新的构建功能开关选项
Android Gradle 插件内置了对现代代码库 (如数据绑定和视图绑定) 和构建功能 (如自动生成 BuildConfig 类) 的支持。但您可能不是每个项目都需要用到这些库和功能。在插件的 4.0.0 版本中,您可以单独关闭某个构建选项 (如下所示),从而优化大型项目的构建性能。关于 DSL 和您可以操作的完整功能列表,请参阅版本说明。
Android Gradle 插件 4.0.0 版本说明 http://developer.android.google.cn/studio/releases/gradle-plugin#4-0-0
android {
// The default value for each feature is shown below.
// You can change the value to override the default behavior.
buildFeatures {
// Determines whether to support View Binding.
// Note that the viewBinding.enabled property is now deprecated.
viewBinding = false
// Determines whether to support Data Binding.
// Note that the dataBinding.enabled property is now deprecated.
dataBinding = false
...
}
}
△ 用于启用/禁用构建功能的 Android Gradle 插件 DSL
依赖元数据
android {
dependenciesInfo {
// Disables dependency metadata when building APKs.
includeInApk = false
// Disables dependency metadata when building Android App Bundles.
includeInBundle = false
}
}
现在让我们回顾一下 Android Studio 4.0 带来的改进以及新功能:
设计:
Motion Editor: 轻松创建、编辑和预览 MotionLayout 动画
Layout Inspector 全新升级: 更加直观的实时调试体验
Layout Validation: 在多个屏幕上同时对比 UI
开发与分析:
CPU Profiler 更新: UI 更直观、更易于浏览,数据更易解读
R8 规则更新: 编写代码缩减规则的智能编辑器功能,如语法高亮、补全和错误检查
IntelliJ IDEA 2019.3 平台更新: 性能和质量得到提升
实时模板更新: 为 Kotlin 提供 Android 专用实时模板
Clangd 支持: 默认启用 Clangd 和 Clang-Tidy
构建:
Build Analyzer: 了解和找到构建时的性能瓶颈
Java 8 语言支持更新: Java 8 API 现在均可使用,与应用最低 API 等级无关
功能对功能的依赖性: 定义两个动态功能模块之间的依赖
buildFeatures DSL: 逐个启用/禁用构建功能,如数据绑定
Kotlin DSL: 对 Kotlin DSL 脚本文件的基础支持
请参阅版本说明,了解本次发布的完整信息。
Android Studio 版本说明 http://developer.android.google.cn/studio/releases#4-0-0
即刻开始使用
请前往下载页面获取 Android Studio 4.0。如果您使用的是旧版 Android Studio,可以直接更新到最新版本。
Android Studio 4.0
https://developer.android.google.cn/studio
推荐阅读