写点什么

Android Studio 3.2 Canary 带来了更好的跟踪支持、Lint 检查等特性

  • 2018-05-20
  • 本文字数:1251 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Google 在 Canary 和 Dev 频道上发布了 Android Studio 3.2 Canary。这个版本是核心 Android Studio IDE 的功能增强,同时还包括新的 Android Profiler、 Android Jetpack 、导入 / 导出 CPU 跟踪数据、记录启动时的 CPU 活动、Lint 检查等功能。

核心 Android Studio IDE 针对 2018.1.1 发布版本的IntelliJ IDEA 进行了增强,这主要是一个 bug 修正的更新,其中包括一项主要的修正,这个功能修正能够恢复自动检查更新。

Android Jetpack 是一组库、工具和架构指导,用来帮助开发人员更快捷更轻松地构建伟大的应用。

现在,我们可以将 Profiler 数据保存为“sessions”,并且能够稍后对其进行重新访问和探查(profiler 会一直保存数据,直到 IDE 下次重启)。

CPU Profiler 中有了一个新的 System Trace,它能够允许开发人员探查设备的系统 CPU 和线程活动。另外,它对于探查系统级别的问题也是很有用的,比如 UI 卡顿(UI jank);借助 Trace 类来 instrument 代码,我们可以在 profiler 时间线中可视化地标记重要的代码程序。

借助 Android Studio 3.2,我们可以使用 Memory Profiler 来探查 JNI 引用。如果你将应用部署到 Android 8.0(API 级别 26)或更高版本的设备上的话,还能探查 JNI 代码的内存分配。

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

Android Studio 3.2 针对 lint 检查提供了很多全新和改善性的特性。Android Studio 3.2 添加了新的 lint 检查,以确保 Java 代码和 Kotlin 代码能够很好地进行相互操作。这些检查包括对 Nullability 注解的查找、将 lamba 参数设置在最后等。为了启用该功能,我们需要在 build.gradle 中添加如下的设置。

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

Android Studio 3.2 带来的其他功能改善包括:

  • Data Binding Library 2;
  • 用来进行代码压缩和混淆的新工具 R8,它将取代 ProGuard;
  • 改善 CMake 构建文件的编辑器,支持语法高亮和代码补全、代码格式化以及安全地重构;
  • 外部头文件的导航;
  • 默认启动原生的 multidex;
  • AAPT2 转移到了 Google 的 Maven 仓库;
  • Android P Developer Preview ;
  • 示例数据,在应用设计时允许开发人员使用占位数据;
  • Material Design 更新;
  • What’s New Assistant,一个新的辅助面板,在更新之后自动打开,通知用户 IDE 最近的变更;
  • Emulator Snapshots 结合 Quickboot 能够为任意的模拟器状态创建快照,并且能够在两秒之内启动。

如果你已经有了 Canary 或 Dev 频道的 Android Studio 构建版本,那么可以选择 Help > Check for Updates(在 Mac 下是 Android Studio > Check for Updates)进行更新。否则的话,可以在这里进行下载

查看英文原文: Android Studio 3.2 Canary Brings Better Traces Support, Lint Checking, and More

2018-05-20 19:001844

评论

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

格一格你的情欲念

王进行

“PlusToken”跨国网络传销案告破,涉案400亿元!

CECBC

敏捷教练和Scrum Master - 敏捷转型中的两个重要角色的对比

Bob Jiang

Scrum 敏捷教练 ScrumMaster

JVM详解之:类的加载链接和初始化

程序那些事

Java JVM GC 加载

最牛逼的Java框架,没有之一

我是苞谷

微碳系:我心中的宇宙

Geek_116789

架构师训练营第九周作业

张明森

谈谈敏捷中的那些模式

Bob Jiang

敏捷 敏捷开发 敏捷教练

刘华:事实证明,假敏捷都比瀑布优秀

刘华Kenneth

DevOps 敏捷 软件开发

Docker 网络

北漂码农有话说

Docker

别在网上乱找代码了,找了一段代码突然爆了!!!

导导

Java

架构师训练营第九周学习总结

张明森

来了来了!Docker安装及运行原理

程序员的时光

Java Docker 微服务

nginx配置文件

张明森

什么是算法的大O表示法

码农神说

算法 时间复杂度 Java算法 大O

F5G+X:给5G一个伙伴,给千行百业一个拥抱

脑极体

JVM参数手册

Rayjun

JVM GC

30岁的二三事

大唐小生

总结 个人感悟

小伙伴想写个 IDEA 插件么?这些 API 了解一下!

程序员小航

IDEA idea插件 教程 API IntelliJ IDEA

金融行业区块链技术应用有了“安全符”

CECBC

Scrum Master是否需要懂技术

Bob Jiang

敏捷 敏捷开发 敏捷教练 ScrumMaster

新生必备清单:不想成为虚度青春的“小透明”,手机应该怎样选?

脑极体

今天你内卷了吗?

池建强

个人成长 内卷化

LeetCode题解:70. 爬楼梯,递归+哈希表,JavaScript,详细注释

Lee Chen

大前端 LeetCode

无意中参加了infoQ的一期活动,获得了所有奖项,哈哈哈。。。

诸葛小猿

InfoQ 奖品

RRedis系列(八):缓存到底该如何做到高可用?

z小赵

redis 分布式系统 高并发系统设计

稳定匹配:幸福不靠等,脱单要主动

KAMI

生活 算法 方法论

这16道Redis最常见面试问题,你能回答上来几个?

火羊哥

Java

【面试必问】Spring中的事务管理详解

只喝纯牛奶

搭乘政策红利“快车” 欧科云链助力区块链人才培养

CECBC

Dockerfile你值得拥有

北漂码农有话说

Docker

Android Studio 3.2 Canary带来了更好的跟踪支持、Lint检查等特性_移动_Diogo Carleto_InfoQ精选文章