Android Studio 3.2 都有哪些更新?这些关键点不要错过

作者:Jamal Eason,Android 产品经理

点击这里即刻下载 Android Studio 3.2。Android Studio 3.2 是应用开发者切入最新的 Android 9 Pie 发布版和构建新的Android App Bundle 的最佳途径。自从 2018 年 Google I/O 大会 Android Studio 宣布更新后,我们精炼和完善了 20 多项新功能,并集中力量提升 Android Studio 3.2 稳定版的质量。

每一位开发者都应该使用 Android Studio 3.2 来过渡到使用新应用发布格式 Android App Bundle。只需极少的工作,就能用 Android Studio 生成一个 App Bundle。将 App Bundle 上传到 Google Play 后即可向用户分发更小的优化后应用。早期采用者已证实 App Bundle 比旧的 APK 应用尺寸减少了 11% - 64%

另一个您不想错过的功能是 Energy Profiler (电量分析器)。新分析器提供一套工具帮助诊断和改善应用的能耗。更长的设备电池寿命一直是用户最关心的一方面,而利用 Android Studio 3.2 中的电量监测器,您可以通过确保应用在正确的时间使用适当的电量,帮助改善设备电池寿命。

您还应该试试新的 Android 模拟器 Snapshots 快照功能。利用这个功能,您可以将模拟器的当前状态快速生成一张快照,包括屏幕、应用和设置的当前状态。您能够在 2 秒内恢复或引导到您的模拟器快照。对于任何一位寻求超快引导时间或寻求在一个预期的 Android 环境中运行测试的应用开发者而言,Android 模拟器快照都是应用开发的一项革命性功能。

除了这些重磅功能外,Android Studio 3.2 中有 20 项新功能以及许多内部的质量改进。利用 Android Studio 3.2,您还可以通过Android Slices针对最新技术进行开发,从 Android Jetpack,到与 Google AI 无缝整合。

感谢为 canary 和 beta 版提供早期反馈的开发者们。您们的反馈帮我们改进了 Android Studio 3.2 的质量和功能。如果您已经准备好迎接下一个稳定版,并希望使用各种新的生产力特性,Android Studio 3.2 已经准备就绪可以下载了。

下面是 Android Studio 3.2 新特性完整列表,按关键开发者流程组织。

开发

>>  Slices 支持 - Slices 是一种接入内置 Android AI 功能的新方式,能够在 Google 搜索和 Google 智能助理中呈现应用内容。Android Studio 3.2 有一个内置模板可以帮您用新的 Slice Provider API 来扩展您的应用,以及新的 Lint 检查来确保您在构建 Slice 时遵循最佳实践。如需使用,在项目文件夹上右键,依次选择 “New→ Other→ Slice Provider”。

△ Slices Provider 模板

>> 样本数据 - 这个特性允许您使用占位符数据协助设计应用。这将帮助您根据运行时环境数据将布局可视化。通过 “布局编辑器” 中的一个弹出窗口,您可以为各种视图添加内置样本数据,如 RecyclerView、ImageView 和 TextView。

>>  Material Design 更新 - 当您从 Android Design 支持库迁移到新的 MaterialComponents 应用主题和库时,Android Studio 3.2 将为您提供新的和更新的小部件,如:BottomAppBar、按钮、卡片、文本域、新字体样式等。 

>>  CMakeList 编辑支持 - 对于在应用中使用 C/C++ 的开发者,Android Studio 优化了对 Cmake 的支持。在 Android Studio 3.2 里,代码补全和语法高亮现在都对一般 CMakeList 构建脚本命令有效。

>>  更新助理 - Android Studio 3.2 有一个新的助理面板,每次更新后会自动打开来通知您关于 IDE 的最新变化。您也可以通过依次选择 “Help → What's New in Android Studio” 来打开这个面板。

>>  AndroidX 重构支持 - Android Jetpack 的组件之一是引入了 Android 扩展库(AndroidX)替换了 Android 支持库。如需添加 AndroidX 到一个新项目,需要添加 android.useAndroidX=true 到 gradle.properties 文件。此外,Android Studio 3.2 有一个新的内置重构动作以帮助您将项目迁移到新的命名空间和依赖。而且如果您有任何 Maven 依赖尚未迁移到 AndroidX 命名空间,Android Studio 构建系统将自动转换这些项目依赖。

>>  IntelliJ 平台更新 - Android Studio 3.2 包含了 IntelliJ 2018.1.6 平台发布。这个 IntelliJ 版本大幅改进了数据流分析、调试、新检测、行内外部注释、Git 部分提交等等。

>>  Kotlin 更新 - Android Studio 3.2 捆绑了 Kotlin 1.2.61,支持 Kotlin 友好的 Android 9 Pie SDK

构建

>>  Android App Bundle - Android App Bundle 是新的应用发布格式,旨在帮您向用户提供更小的 APK 并降低应用的下载大小。Google Play 名为 Dynamic Delivery “动态交付” 的新应用服务模式会处理您的 App Bundle,针对每个用户的设备配置生成并服务优化后的 APK,从而让用户只需下载其需要的代码和资源就能运行您的应用。利用 Android Studio 3.2 或通过 命令行可以轻松将您的代码构建为一个 App Bundle,并根据语言、屏幕密度和 ABI 缩减 APK 大小,且应用代码不会改变。

△ 构建 Android App Bundle

>> D8 Desugaring - 某些情况下,新的 Java 语言特性要求新的字节码和语言 API。但较旧的 Android 设备可能不支持这些特性。Desugaring允许您通过在构建过程中将新字节码和语言 API 替换为旧版,从而在较旧的设备上使用这些特性。D8 Desugaring 在 Android Studio 3.2 中默认启用,现在您可以使用大多数最新的语言变更,同时针对较旧的目标设备。

>> R8 优化器 - 从 Android Studio 3.2 开始,我们将逐渐使用 R8 替代 ProGuard 来优化和缩减 Java 语言字节码。R8 仍处于实验阶段,因此我们尚不推荐您使用 R8 发布您的应用,但现在很适合向 Android Studio 团队提交早期反馈,以便我们在 R8 正式取代 ProGuard 前进行调整。

测试

>> 模拟器 Snapshots - 最新版的 Android 模拟器允许您将模拟器的当前状态创建一份快照,并在 2 秒内引导和切换到任何快照。基于 Android 模拟器 Quickboot 特性构建的 Android 快照稳定版能够更快保存和加载,这主要得益于内部的速度改进优化。 在测试和开发应用时,Android 快照允许您预配置一个拥有您想要的预设、应用、数据和设置的 Android 虚拟设备(AVD)快照,并反复回到同样的快照。

△ Android 模拟器 Snapshots

>>  Microsoft® Hyper-V™ 支持 - 现在您可以在 Windows® 10 启用了 Hyper-V 的电脑上运行 Android 模拟器。Intel HAXM 仍是默认的 hypervisor,能够提供最快的 Android 模拟器体验。但得益于微软近年的开源贡献,以及新 Windows Hypervisor Platform (WHPX) API 的加入,Android 模拟器能够与其他使用 Hyper-V 的应用共存,如:使用新 Hyper-V 支持的本地虚拟机。

>>  AMD® 处理器支持 - 现在 Windows 10 上的 Android 模拟器支持 AMD 处理器。以前 AMD 处理器运行 Windows 时,Android 模拟器只能进行缓慢的软件模拟,但现在使用 AMD 处理器的开发者拥有了硬件加速性能。

>>  Android 模拟器中的录屏 - 现在您可以使用 Android 模拟器中新增的录屏功能在任何 Android API Level 录制屏幕和音频。过去,受 Android 模拟器支持的限制,物理 Android 设备上的录屏只能在 Android 4.4 KitKat (API 19) 及以上进行,且没有音频。利用最新的 Android 模拟器 (v28.0.+) 您将不再受此限制。此外,还内置了转换器,支持输出为 GIF 和 WebM。您可以通过 Android 模拟器扩展控制面板、命令行和从 Android Studio 中触发新的录屏特性。

>>  Android 模拟器的虚拟场景摄像头 - Android 模拟器的新虚拟场景摄像头,能够帮您为 Google 构建虚拟现实体验的平台 ARCore 进行开发。模拟器经校准,可使用 ARCore API 用于 AR 应用,还允许您注入虚拟场景位图图像。该虚拟场景摄像头还可以用作兼容 HAL3 的摄像头。

>>  ADB 连接助手 - Android Studio 3.2 有一个新的助手系统,能帮助解决 Android ADB 设备连接问题。ADB 连接助手会引导您进行一般的解决步骤,以将您的 Android 设备连接到您的开发机。您可以通过 “运行” 对话框或依次选择 “Tools → Connect Assistant” 来触发助手。

优化

>>  Energy 分析器 - 许多手机用户都十分关心电池寿命,而您的应用对电池寿命的影响可能超出您的预期。Android Studio 性能监测器套件中的电量监测器能够帮您了解您的应用对 Android 设备电量的影响。现在您能够以可视化的方式估计系统组件的用电情况,还能检查可能耗尽电池的后台事件。要使用电量监测器,请确保您已经连接到一部运行 Android 8.0 Oreo (API 26)或更高级系统的 Android 设备或模拟器。

△ 电量监测器

>>  System Trace 系统跟踪 - CPU 监测器中的新 “系统跟踪” 特性允许您查看您的应用与系统资源交互的详情。查看您的线程状态的精确时序和持续时间,以可视化方式查看您的 CPU 各核心的瓶颈,以及添加定制跟踪事件以供分析。要使用系统跟踪,开始监测您的应用,点击进入 CPU 监测器,然后选择 “系统跟踪” 记录配置。

>>  Profiler Sessions - 现在我们能够自动将监测器数据保存为 “会话” 以便之后打开 Android Studio 时再次访问和查看。我们还新增了导入和导出 CPU 记录和堆转储的功能,以便之后用其他工具分析或查看。

>>  自动 CPU 记录 - 现在您可以使用调试 API 自动记录 CPU 活动。在您将您的应用部署到一部设备之后,当您的应用调用 startMethodTracing(String tracePath) 时监测器会自动开始记录 CPU 活动,而当您的应用调用 stopMethodTracing() 时会停止记录。类似地,现在您还可以通过在您的运行配置里启用 “启动时开始记录方法跟踪” 选项,在应用启动时自动开始记录 CPU 活动。

>>  JNI 引用追踪 - 如果您的 Android 应用中有 C/C++ 代码,现在 Android Studio 3.2 允许您在内存监测器中查看您的 JNI 代码的内存分配。只要您将您的应用部署到一部运行 Android 8.0 Oreo(API 26)或更高级系统的设备上,您就可以从您的 JNI 引用中下钻查询分配调用堆栈。要使用该功能,启动一个内存监测器会话,并从 Live Allocation 下拉菜单中选择 JNI 堆。

新版本重点特性总结

最新版 Android Studio 3.2 Canary 包含:

开发

>> AndroidX 重构

>> 样本数据

>> Material Design 更新

>> Android Slices

>> CMakeList 编辑

>> 新助理

>> 新 Lint 检查

>> Intellij 平台更新

>> Kotlin 更新

构建

>> Android App Bundle

>> D8 Desugaring

>> R8 优化器

测试

>> Android 模拟器截图

>> Android 模拟器中的录屏

>> 虚拟场景 Android 模拟器摄像头

>> AMD 处理器支持

>> Hyper-V 支持

>> ADB 连接助手

优化

>> 电量分析器

>> 系统跟踪

>> 监测器会话

>> 自动 CPU 记录

>> JNI 引用追踪

开始使用

点击这里,下载最新版 Android Studio 3.2。如果您正在使用旧的 Android Studio Canary 版,请确保更新到 Android Studio Canary 14 或更高版本。如果您想保持一个稳定版的 Android Studio,您可以同时运行 Android Studio 的稳定发布版和 Canary 发布版。

要使用上述的 Android 模拟器特性,请确保您正在运行通过 Android Studio SDK 管理器下载的最新版 Android 模拟器 v28.0.7 或更高版本。

我们感谢您的任何反馈、问题以及您希望看到的特性。请注意,要保持高产品质量,您在早期发布通道见过的一些特性(如:导航编辑器)并未在稳定发布通道默认启用。如果您发现 bug 或其他问题,欢迎您向我们反馈,或在文章下方留言给我们

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,480评论 2 59
  • Android 8.0 为用户和开发者引入多种新功能。本文重点介绍面向开发者的新功能。 请务必查阅Android ...
    android之子阅读 3,360评论 0 74
  • 当我们勇敢的时候,我们并不如此想,我们一点也不认为自己是勇敢的。——尼采 就在前几天,我真正的认识和理解了这句话....
    内观姐姐阅读 695评论 9 23
  • 多年以后,我读到了萨提亚大师约翰·贝曼博士对婚姻与孩子关系的理解: “我们给孩子最好的礼物是好的婚姻,其次是好的离...
    清露静心阅读 466评论 4 8