提前锁票 InfoQ 最具价值感的视频栏目 | InfoQ 大咖说 了解详情
写点什么

Android 已经做好迎接可折叠手机、Kotlin 1.3 的准备

Diogo Carleto

2018 年 11 月 20 日

Android已经做好迎接可折叠手机、Kotlin 1.3的准备

在 Android 开发峰会上,谷歌发布了一系列新闻,包括 Android 支持 kotlin 1.3 新特性、可折叠手机支持、应用内 Updates API、Android Studio 改进等等。


Kotlin

Kotlin 1.3带来了一系列新的语言特性、API、Bug 修复和性能改进。这些新特性将通过KTX扩展(KTX 针对 Kotlin 的使用优化了 Jetpack 和 Android 平台 API)集成到 Kotlin 专用的 API 中,作为 Android Jetpack 的一部分,包括:


  • 内联类是一个实验性特性,它允许开发人员创建一个类型,除非装箱,否则不会分配。

  • 无符号数现在是 Kotlin 标准库的一部分,包括 UInt、UByte 和 ULong。这些新类型是使用内联类构建的。

  • 以前为 Android 或 JVM 编写的多平台代码现在也可以面向 JavaScript 或本机代码了。这提供了在更多平台上重用部分代码库的可能性。

  • 协程支持现在已稳定。协程提供了设计异步、非阻塞程序的强大范式。


Android Studio

Android Studio 3.3 Beta 3 带来了一系列的特性、改进和 Bug 修复。我们将介绍其中的一部分。


内存分配分析器现在允许开发人员选择一种模式来跟踪实时内存分配:


  • 全部:获取所有对象的内存分配;

  • 抽样:定期捕获对象内存分配的样本,这是默认行为,在分析时对应用程序性能的影响较小;

  • 关闭:关闭内存分配。


CPU 分析器现在允许开发人员查看 Java 应用程序在主 UI 线程和 RenderThread 上渲染每一帧需要多长时间。当查找导致 UI“掉帧(jank)”和低帧率的瓶颈时,可能会有用到这些数据。


Android Studio 添加了一个新的对话框,允许开发人员删除未使用的目录。当一个新的 Android Studio 主要版本第一次运行时,它会查找包含与 Android Studio 旧版本相关联的文件的目录,而这个旧版本已经无法找到相应的安装。当找到这样的文件时,将显示一个对话框列出这些文件,并提供删除文件的选项。


Android Studio 还支持构建Android应用程序包,完全支持Instant Apps。换句话说,开发人员可以从一个 Android Studio 项目中构建和部署安装应用和 Instant App。要使用此功能,请确保在创建新项目时勾选了“配置项目>此项目将支持 Instant App”的复选框。清单文件中将增加下列属性:


<manifest ... xmlns:dist="http://schemas.android.com/apk/distribution"><dist:module dist:instant="true" />...</manifest>
复制代码


Android Studio 现在支持使用Clang-Tidy对包含原生代码的项目进行静态代码分析。


R8是一个替代 ProGuard 的新的代码压缩和混淆工具,它是默认启用的。


可折叠手机

谷歌已经宣布 Android 支持可折叠手机,名为“Foldables”。可折叠手机是由设备制造商创建的新类型,用户可以折叠/展开设备,如下图所示。



(图片来自android-developers.googleblog.com


谷歌正在优化 Android 系统,以适应一种叫做屏幕连续性的新形式。在这种新形式中,应用程序可以自动从一个屏幕过渡到另一个屏幕。例如,用户用折叠过的小屏幕启动视频,然后展开设备以获得更大的屏幕。当用户展开可折叠手机时,应用程序可以无缝地转移到更大的屏幕上,没有任何问题。在2018年三星开发者大会上,三星宣布了首款可折叠手机,并计划在明年推出。


应用内 Updates API

谷歌发布了 Instant App 的改进,推出了应用内 Updates API。有了这个 API,开发人员将有两个选项可以保证用户更新他们的应用程序:第一个是关键更新的全屏体验,迫使用户立即应用更新。第二种是灵活更新,这意味着用户可以在下载更新时继续使用应用程序。据谷歌介绍,他们正与谷歌的一些合作伙伴一起测试这个 API,并将尽快提供给所有开发人员。



(图片来自android-developers.googleblog.com


Android Jetpack

Android Jetpack带来了一些架构组件库的更新。按照谷歌的说法,旨在简化导航实现的Navigation将在 11 月进行 Beta 测试。


按照谷歌的说法,另一个将进行 Beta 测试的组件是WorkManager,该库提供了一个基于后台约束的作业的解决方案,取代诸如作业或SyncAdapters这样的东西,提供一个简洁的现代化 API,旨在使它更容易指定异步任务,在有或没有 Google Play Services 的设备上都可以运行。


Slices是 UI 模板,可以在谷歌搜索应用和其他地方(如谷歌助手)中显示丰富的动态交互式内容。它已经被转移到公开搜索实验中。


谷歌Android开发者网站上提供了更多信息。谷歌还为那些想为可折叠手机准备应用程序的用户提供了一系列建议


如果你已经把 Android Studio 设置为在Beta通道上接收更新,那么你可以通过帮助 >检查更新(Android Studio > 检查 Mac 版更新)来获得更新。否则,你可以从这里下载。


查看英文原文:https://www.infoq.com/news/2018/11/android-dev-summit-2018


2018 年 11 月 20 日 13:401097
用户头像

发布了 1008 篇内容, 共 310.5 次阅读, 收获喜欢 278 次。

关注

评论

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

黑客练手入门| pwnable.kr—幼儿瓶—01:fd

BigYoung

黑客 安全 安全漏洞 28天写作 2月春节不断更

信息茧房

lidaobing

28天写作 信息茧房

随心而作

青城

28天写作 2月春节不断更

人员培养,不是捷径的捷径(下)

一笑

管理 人才培养 28天写作

信任从对自己诚实开始

Justin

心理学 信任 28天写作

每个人都应该理解这三个基本的 MLOps 概念

李忠良

28天写作

Webpack | 如何提升构建速度,进行体积优化?

梁龙先森

前端工程化 webpack 28天写作 2月春节不断更

你会在车里唱K吗? (28天写作 Day27/28)

mtfelix

28天写作 智能汽车 MaaS 出行方案

速看!教育上云 让学习战“疫”两不误

浪潮云

教育云

面试官:请讲一下Redis主从复制的功能及实现原理

华为云开发者社区

redis 数据 节点 redis哨兵 主从复制

【Linux系统】常驻进程应用实践

程序员架构进阶

Linux 守护进程 日更挑战 28天写作 2月春节不断更

常用网址

现实中游走

十倍效率背后的管理逻辑

Ian哥

28天写作

28天瞎写的第二百三十七天:抢了HR 饭碗了吗?

树上

HR 28天写作

回顾与总结 | 视频号28天(28)

赵新龙

28天写作

Kubernetes安装篇(下):基于Kubeadm方式的集群部署

xcbeyond

Kubernetes kubeadm 部署 28天写作 Kubernetes从入门到精通

程序员成长第三篇:好的代码和好的工程师

石云升

28天写作 2月春节不断更 工程师等级

由孩子学会骑自行车想到

石君

日常思考 28天写作

管理笔记[6]:任人唯贤、赏罚分明、任人所长

俊毅

SpringIOC的注解开发

小马哥

Java spring 日更挑战 7日更

Mybatis【18】-- Mybatis自关联多对一查询方式

秦怀杂货店

mybatis

让我们与内心聊聊,寻找一段思考发展之路。

叶小鍵

为什么要持续学习

不在调上

机器学习笔记之:Addition and Scalar Multiplication

Nydia

驱动力读书笔记之三

张老蔫

28天写作

如果生命的长度可以被改写「幻想短篇 27/28」

道伟

28天写作

Mac打开wps后风扇转的快机身发热

现实中游走

Mac cpu 100% wps 机身发热

产品训练营-第4周(1课)

Geek_娴子

通过扫码提交信息

Tango

日更挑战 2月春节不断更

【JS】异常处理

学习委员

JavaScript 前端 js 28天写作 2月春节不断更

口碑销量双爆的数据分析丛书再添新成员!

博文视点Broadview

打造 VUCA 时代的 10 倍速 IT 团队

打造 VUCA 时代的 10 倍速 IT 团队

Android已经做好迎接可折叠手机、Kotlin 1.3的准备-InfoQ