写点什么

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

评论

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

计算机操作系统基础(三)---进程管理之五状态模型

书旅

php laravel 多线程 操作系统 进程

神器工具:新一代多系统启动 U 盘装机解决方案

JackTian

工具软件 U盘启动盘 安装操作系统 ventoy ISO 镜像文件

架构师训练营第四周总结

烟雨濛濛

计算机操作系统基础(一)---操作系统概览

书旅

php laravel 多线程 操作系统 进程

计算机操作系统基础(二)---进程管理之进程实体

书旅

php laravel 多线程 操作系统 进程

Week2:作业二

车小勺的男神

[深入理解Redis]读取RDB文件

老胡爱分享

redis 源码阅读

在以后的高校招生中,应用区块链技术,可以防、治冒名顶替吗?

CECBC

区块链技术 高考 信息防篡改

计算机操作系统基础(四)---进程管理之进程同步

书旅

php laravel 多线程 操作系统 进程

JDBC 批量插入:MyBatis、PostgreSQL

羊八井

postgresql mybatis JDBC

架构师训练营:第四周第一节,互联网架构系统架构的演化

zcj

极客大学架构师训练营

来了!8M/S+速度,Pdown复活!

程序员生活志

如何让你的大脑更健康

兆熊

架构师训练营 - 第 3 周命题作业

红了哟

学写PEP,参与Python语言的设计

早睡蟒

Python Python PEP PEP

mysql字符匹配批量修改

毛佳伟🐳

MySQL

如何搭建一个Hadoop集群

Rayjun

大数据 hadoop

区块链≠分布式账本,别再傻傻分不清

CECBC

区块链技术 高考 信息防篡改

MySQL InnoDB存储引擎 - 事务

Axe

Week2:作业一

车小勺的男神

serverless之一:入门

毛佳伟🐳

Serverless

ARTS 第四周 6.15-6.21

我笔盒呢

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

红了哟

游戏夜读 | 这是一款情绪游戏

game1night

疫情常态下区块链构建分布式数字身份

CECBC

疫情 区块链技术 分布式数字身份

ARTS Week5

时之虫

ARTS 打卡计划

微信支付的软件架构究竟有多牛逼...

程序员生活志

微信 架构

Github仓库如何选择开源许可证

早睡蟒

GitHub 开源 GitHub license

ARTS 第五周 6.21-6.28

我笔盒呢

网络性能篇 (13讲)

程序员老王

ARTS打卡-04

Geek_yansheng25

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