写点什么

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:001835

评论

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

如何实现移除控件?

Towify

编辑器 无代码 无代码微信小程序

React源码分析5-commit

flyzz177

React

「Go框架」路由:web框架中是如何根据url地址找到对应的处理逻辑的?

Go学堂

golang 个人成长 程序员‘ 12月月更

前端工程师leetcode算法面试必备-二分搜索算法(上)

js2030code

JavaScript LeetCode

React Streaming SSR 原理解析

字节跳动终端技术

React

前端必会面试题总结

loveX001

JavaScript

信用卡应用评测系列——阳光惠生活APP7.0打造“世界波”专区

易观分析

金融 银行 信用卡

react hook 源码完全解读

flyzz177

React

vivo 推荐业务 x DeepRec:全链路优化实践

阿里云大数据AI技术

人工智能 gpu 推荐引擎 12 月 PK 榜

【观看直播有礼】第三届云原生实战峰会正式官宣启动

阿里巴巴云原生

阿里云 云原生 实战峰会

SPL 和 SQL 能不能融合在一起?

jiangxl

好酒要有好工艺,贾斯特里尼&布鲁克斯,用心酿造每一滴酒

联营汇聚

前端关于面试你可能需要收集的面试题

loveX001

JavaScript

从输入URL到渲染的完整过程

loveX001

JavaScript

软件测试 | 测试开发 | 一文搞定 Postman 接口自动化测试

测吧(北京)科技有限公司

陈世佳酿贾斯特里尼&布鲁克斯,优质葡萄酒连储藏都有秘诀

联营汇聚

实用指南:手把手搭建坚若磐石的DevSecOps框架

SEAL安全

DevSecOps 12 月 PK 榜 DevSecOps框架 实用指南

贾斯特里尼&布鲁克斯,葡萄酒中的天花板

联营汇聚

新项目为什么决定用 JDK 17了

古时的风筝

Java JVM jdk17

React源码分析7-state计算流程和优先级

flyzz177

React

React源码分析6-hooks源码

flyzz177

React

React源码解读之更新的创建

flyzz177

react源码中的fiber架构

flyzz177

React

如何使用Towify在微信小程序中配置输入必填报错?

Towify

小程序 微信小程序 无代码 无代码微信小程序

先到先学!阿里新产Spring全家桶核心笔记,底层源码+应用全覆盖

程序员小毕

spring 源码 后端 架构师 java面试

从URL输入到页面展现到底发生什么?

loveX001

JavaScript

低碳机关先行,昆明引领分布式光伏新变革

极客天地

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

前端刷完这12道滑动窗口,就可以出山面试了

js2030code

JavaScript LeetCode

分支路径图调度框架在 vivo 效果广告业务的落地实践

vivo互联网技术

图调度 效果广告 分支路径

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