写点什么

Android Studio 3.2 Beta 3 引入了新的 Navigation Editor、Android App Bundle 等特性

  • 2018-07-27
  • 本文字数:2855 字

    阅读完需:约 9 分钟

Google 在其 Beta 频道上发布了 Android Studio 3.2 Beta 3。这个版本引入了新的 Assistant 和 Navigation Editor,另外还包含 Android Jetpack、AndroidX 迁移、Android App Bundle、新的 Android Profiler、Lint 检查等功能。

Android Studio 添加了新的 Assistant 面板,它能够提示最新的变化。在 Android Studio 初始化的过程中,如果探测到有新的信息要展示,该面板就会打开。要打开 Assistant 面板,点击 Help > What's new in Android Studio。核心 Android Studio IDE 已经升级到了 IntelliJ IDEA 增强的 2018.1.1 释放版,这主要是一个缺陷修正的更新,包括一个重要修正,即恢复更新的自动检查。

新的 Navigation Editor 编辑器是一个体验性的特性,它致力于简化应用中destination(应用中的特定屏幕)之间导航的设计和实现。 Android Jetpack 是库、工具和架构化指南的一个集合,帮助开发人员更快更容易地构建伟大的应用。Navigation Editor 集成了 Android Jetpack 的 Navigation Architecture Component ,从而能够为创建应用的导航结构提供图形化的视图。要启用 Navigation Editor,点击 File > Settings(Mac 下则是 Android Studio > Preferences),选择左侧面板的 Experimental 分类,然后选中 Enable Navigation Editor 旁边的复选框。

作为 Jetpack 的一部分,Google 正在将 Android 支持库转移到一个使用 androidx 命名空间的新 Android 扩展库( AndroidX )中。Android Studio 3.2 提供了一个新的特性,帮助开发人员完成这一过程,要将已有的项目迁移至 AndroidX,开发人员需要选择 Refactor > Migrate to AndroidX。如果开发人员希望立即开始使用 AndroidX,而不希望转换已有的第三方库的话,可以将 android.useAndroidX 标记设置为 true,并将 android.enableJetifier 标记设置为 false。

Android App Bundle 是一个新的应用发布格式,它用来改善开发人员发布应用的方式。Google Play 的动态交付(Dynamic Delivery)会针对每个用户的设备配置,使用 app bundle 来生成和提供优化过的 APK,所以每个用户只会下载运行应用所需的代码和资源。除此之外,开发人员不用构建、签名和管理多个 APK,而用户能够得到更小的应用。

Slices 是 UI 模板,能够在 Google Search 和其他地方(如 Google Assistant)展现来自你的应用的丰富、动态和交互式的内容。除了全屏应用体验之外,Slices 还能借助预约帮助用户执行任务。

在 Android Studio 3.2 中,Android Profiler 添加了一些新的特性,例如 Energy profiler 能够以图形化的形式展现估算的应用能量使用情况,对于理解应用对 Android 设备的影响,这是很有帮助的。

开发人员可以在 CPU Profiler 中新的 System Trace 下查看设备的系统 CPU 和线程活动。另外,它对于探查系统级别的缺陷也是有帮助的,比如 UI 卡顿(UI jank),通过使用 Trace 类 instrument 代码,我们可以在 profiler 时间线中可视化地标记重要的代码程序。

借助 Android Studio 3.2,开发人员可以使用 Memory Profiler 探查 JNI 引用。我们还可以为 Android 8.0(API level 26)或更高版本的设备探查为 JNI 代码所分配的内存。

另外一个新特性只能用到部署到 Android 8.0 或更高版本的应用之中,那就是能够记录应用启动过程中的 CPU 活动。我们可以将 CPU 活动记录导出为一个“trace”文件,还可以将通过 Debug API CPU profiler 创建的“.trace”文件导入到 Android Studio 3.2 中并进行探查。

Android Studio 3.2 包含了一系列用于 lint 检查的新特性和功能增强。所添加的新 lint 检查能够保证 Java 代码和 Kotlin 代码良好协作。这些检查包括查找是否存在 Nullability 注解、将 lambda 参数放到最后等等。你需要按照下面的设置编写 build.gradle 文件才能将其启用:

复制代码
android {
lintOptions {
check 'Interoperability'
}
}

Android Studio 3.2 带来的其他重要改善包括:

  • 数据绑定库的 v2 版本(Data Binding Library);
  • R8,用于代码压缩和混淆的新工具,它将会取代 ProGuard;
  • CMake 构建文件编辑器的增强,包括语法高亮和代码补全、代码格式化以及安全的重构;
  • 外部头文件的导航;
  • 默认的原生 multidex 支持;
  • AAPT2 转移到了 Google 的 Maven 仓库中;
  • Android P 开发人员预览版
  • Sample Data,允许开发人员使用占位符数据辅助应用的设计;
  • Material 设计的更新
  • Emulator Snapshots;结合 Quickboot 能够在任意的 emulator 状态创建快照并在两秒之内将其启动起来。

如果你已经将 Android Studio 设置为接受来自 Beta 频道的更新,那么可以通过 Help > Check for Updates(Mac 下是 Android Studio > Check for Updates)进行更新。否则的话,也可以在这里下载。

查看英文原文: Android Studio 3.2 Beta 3 Brings Navigation Editor, Android App Bundle and More

2018-07-27 05:291468

评论

发布
暂无评论
发现更多内容

算法分析关键

Geek_0b8195

算法和数据结构

一个草根的日常杂碎(10月19日)

刘新吾

随笔杂谈 生活记录 社会百态

架构师必备的那些分布式事务解决方案!!

架构师修行之路

分布式 微服务 架构设计

Linux的上手命令

Linux 常用命令

万物互联的IoT时代,柔性电子会大行其道吗?

脑极体

一个草根的日常杂碎(10月18日)

刘新吾

随笔杂谈 生活记录 社会百态

利用区块链等技术,加强对交通运输信用信息的归集共享和分析应用

CECBC

区块链 交通运输

【线上排查实战】AOP切面执行顺序你真的了解吗

Zhendong

spring aop

架构必修:领域边界划分方法--职责驱动设计(RDD)

马迪奥

架构 领域 架构师 RDD

云原生在京东丨云原生时代下的监控:如何基于云原生进行指标采集?

京东科技开发者

云原生

透视HTTPS建造固若金汤的堡垒

码哥字节

https 加密解密 HTTP

第四周作业

dll

vivo 商城前端架构升级—前后端分离篇

vivo互联网技术

Java 大前端 前后端分离

1分钟带你入门 React 公共逻辑抽离HOC...

Leo

大前端 React Hooks HOC Render Props

mongodb 源码实现、调优、最佳实践系列-百万级代码量mongodb内核源码阅读经验分享

杨亚洲(专注MongoDB及高性能中间件)

MySQL mongodb 源码 中间件 分布式数据库mongodb

甲方日常 35

句子

工作 随笔杂谈 日常

架构训练营学习笔记之五技术选型(一)

于成龙

架构训练营

深入java week1-01 字节码、内存、GC、调试工具

闷骚程序员

年纪轻轻怎么就卵巢早衰了?试管可帮忙!

Geek_65d32f

试管 三代试管

分布式下,我想要一致性

架构师修行之路

分布式 微服务

央行数字货币离我们还有多远?

CECBC

数字货币

java week1练习

闷骚程序员

游戏数值策划之常用excel函数

吴优秀同学

Excel 游戏

聊聊技术人员如何学习成长

架构精进之路

职业成长

Flink窗口算子-6-8

小知识点

scala 大数据 flink

Go语言内存管理三部曲(三)图解GC算法和垃圾回收原理

网管

内存管理 垃圾回收 GC GC算法 Go 语言

架构师训练营 1 期 -- 第五周作业

曾彪彪

极客大学架构师训练营

数据结构与算法系列之链表操作全集(一)(GO)

书旅

数据结构 数据结构和算法 Go 语言

Nginx 在运维领域中的应用,看这一篇就够了

华章IT

nginx Linux 运维工程师

一个草根的日常杂碎(10月20日)

刘新吾

随笔杂谈 生活记录 社会百态

二十、深入Python迭代器和生成器

刘润森

Python

Android Studio 3.2 Beta 3引入了新的Navigation Editor、Android App Bundle等特性_移动_Diogo Carleto_InfoQ精选文章