写点什么

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

Diogo Carleto

  • 2018-11-20
  • 本文字数:1856 字

    阅读完需:约 6 分钟

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:401602
用户头像

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

关注

评论

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

守护数据安全,天翼云是认真的!

天翼云开发者社区

云计算 云服务 数据安全

Maven 简介及安装

Emperor_LawD

maven 5月月更

元宇宙参与指南——如何融入元宇宙建设?

CECBC

【愚公系列】2022年05月 二十三种设计模式(十二)-代理模式(Proxy Pattern)

愚公搬代码

5月月更

模块五

ASCE

linux之yum源设置代理

入门小站

Linux

微博系统中”微博评论“的高性能高可用计算架构

凯博无线

设计微博系统中”微博评论“的高性能高可用计算架构

流火

时序数据库在智慧用电领域的应用

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

基于 Agora SDK 实现 Windows 端的多人视频互动(基于3.6.2版本)

声网

音视频 sdk

通用池化框架commons-pool2实践

FunTester

下个牛市,Web3世界的龙头项目PlatoFarm能否踏足山巅

BlockChain先知

面试答不上Java并发编程?阿里P8提供的27道并发面试解析,请查收

Java浪潮

Java spring 架构 编程语言

微博评论高性能高可用计算架构设计分析

锎心😌😌😌

再谈JavaScript 中的对象解构

devpoint

JavaScript ES6 5月月更 赋值解构 对象操作

druid 源码阅读(三)初始化连接池(2)

爱晒太阳的大白

5月月更

存在负权边,Bellman-Ford

工程师日月

算法 5月月更

百度智能云特色城市业务指挥平台,助力城市管理更智能

百度开发者中心

为什么你的maven打包老是出现问题

ZuccRoger

5月月更

区块链+供应链:共建全国统一大市场

CECBC

学生管理系统(1)简介

5月月更

工业金属零部件质检解决方案详解,让AI质检一步到位!

百度开发者中心

架构实战营作业五

库尔斯

#架构实战营

微博评论高性能高可用计算架构设计

踩着太阳看日出

架构训练营

【LeetCode】删列造序Java题解

Albert

LeetCode 5月月更

微博评论高性能高可用计算架构

Trent

高可用 架构设计 高性能 训练营

架构实战营 - 模块五 - 作业

michael

架构实战营 #架构实战营 「架构实战营」

在线Base64编码加密解密还原工具

入门小站

工具

面试还不会Spring?阿里P8总结的100道面试解析,让你实锤面试官

Java浪潮

Java 编程 架构

在线TSV转XML/JSON工具

入门小站

工具

Redis「1」流水线、事务、Lua 脚本

Samson

Redis 核心技术与实战 5月月更

Android已经做好迎接可折叠手机、Kotlin 1.3的准备_硬件_InfoQ精选文章