Android Q Beta 3 亮相 Google I/O'19

2022-09-20 09:00:14 浏览数 (3)

作者: Dave Burke, 工程部副总裁

I/O'19 期间 Android 达成了两项里程碑的成就: 其一,迎来第 10 个主版本;其二,全球活跃设备数量突破 25 亿台。

Android Q 主要聚焦在三个方面: 创新、隐私与安全,以及数字健康。我们想协助开发者利用 5G、折叠屏、无框屏、设备内置 AI 等最新技术继续创造精彩,同时确保用户安全、隐私及数字健康是您开发过程中的首要考虑因素。

在前几天的 2019 Google I/O 开发者大会上,我们介绍了 Android Q 的一些新特性,并发布了 Android Q 的最新版本——Android Q Beta 3。不论是对于 Beta 3,还是即将在今秋发布的稳定版 Android Q 而言,您的反馈都是推动我们进步的强大动力,在此,十分感谢大家一路以来的支持!

今年,用户可在由 12 个设备厂商出品的 15 款合作机型上体验 Android Q Beta 3 —— 支持设备的数量是去年的两倍!这一切得益于 Project Treble 计划的落地,当然,更离不开 Google 合作伙伴的积极协助,为我们在全球加快 Android 的更新速率。这些合作伙伴包括华为、小米、诺基亚、索尼、vivo、OPPO、一加、华硕、LGE、传音、Essential 和 realme。

请前往 android.com/beta 查看全部的 Beta 设备,并了解详细的更新步骤。如果您已拥有一台 Pixel 设备,请访问 Beta 体验计划,并在设备上获取更新。如果您已加入计划,设备将马上收到更新推送。如果您想开始为 Android Q Beta 开发应用,请移步 developer.android.google.cn/preview。

隐私及安全

正如我们之前在 Google I/O 开发者大会上分享的一样,Google 十分注重用户隐私及安全,因此我们在 Android Q 中增加了许多安全防护方面的功能。

隐私

隐私是 Android Q 的主要着力点,从提升平台的防护等级,到以隐私为中心设计新特性,我们从多个角度突破,力图提供完善的安全措施。当然,让用户享有更多控制权,确保应用和设备透明公开信息的收集和使用,这两点也十分重要。

为了提供更好的隐私保护并授予用户更多控制权,Android Q 在之前几个版本的基础上,引入了多项跨平台变更,例如,我们改进了系统 UI ,并针对应用数据使用权限引入了更为严格的限制。

比如说,Android Q 在位置访问权限方面让用户享有更多控制。应用仍旧可以发起请求,但从 Android Q 开始,用户可选择何时允许应用获取位置信息,如仅在使用该应用时允许、始终允许或拒绝。更多内容,请阅读开发者指南,让应用更好地应对位置管理新规定。

除了位置权限以外,我们还引入了分区储存功能 (Scoped Storage),让用户可以更好地管理设备内文件,并防止应用访问敏感的个人信息与应用数据。您的反馈对该特性的优化起到了很重要的作用,我们最近公布了关于该特性的一些变更,目的是方便您在应用中提供相关支持。这些变更在 Beta 3 已生效。

另一项重要变更是限制应用从后台启动,防止应用突然从后台跳转至前台并挡住前台应用。在 Beta 3 中,我们不再向应用发送 toast 警告,而是直接禁止应用启动。

为了防止应用追踪设备,我们限制应用访问不可重置的设备识别号,如设备 IMEI 码、序列号等等。请仔细阅读最佳实践,为您的用例选择正确的识别号。当应用连接不同的 Wi-Fi 网络时,Android Q 会在连接中都随机化 MAC 地址;另外,我们也将网络连接 API (Connectivity API) 置于位置权限的保护下。我们提早与您分享这些变更,是为了给您预留充足的时间做好准备。

安全

为了保障用户安全,我们扩展了 BiometricPrompt 验证框架,让 Android 得以从系统层面提供生物验证支持。另外,我们还扩展了对人脸识别等被动验证方法的支持,并加入了隐式和显式两个类型的身份验证流。在显式验证流中,用户必须明确确认执行事务操作;隐式验证流则主要负责被动验证这类较为轻便的事务,无需用户提供明确确认。

Android Q 还添加了 TLS 1.3 支持。TLS 1.3 是 TLS 标准的一次比较重要的更新,它在安全性、性能和隐私方面都进行了大幅优化。根据我们收集到的数据显示,与 TLS 1.2 相比,1.3 版本中安全网络连接的建立速度加快了 40%。TLS 1.3 默认启用,不论应用针对哪个等级的 API 开发,都需通过 Android TLS 堆栈建立所有 TLS 连接。更多细节,请参考官方文档。

Project Mainline 计划

我们在今天宣布启动 Project Mainline ,目的在于保障 Android 用户的安全,并确保用户设备能够直接从 Google Play 获取最新的重要代码更新。在 Project Mainline 的帮助下,现在我们不再需要设备厂商提供全套的系统更新,而是直接在操作系统内部更新特定的内部组件。这意味着,我们能够长期为设备上提供更新的 OS 代码,提高一致性,同时以更快的速度向用户推送 AOSP (Android 开源项目) 中的代码。

我们计划采用与应用交付更新同样的方式来更新 Project Mainline 的模块——在后台从 Google Play 下载最新版本,待设备下次开机时再完成加载。您可前往 Android 开源项目获取模块的源代码,而且在每次更新发布之后,我们也会将相应代码开源。另外,鉴于 Project Mainline 的开源性,因此,模块中会包含由 Google 合作伙伴和开发者社区贡献的改进与修复代码。

Project Mainline 为用户带去了许多裨益,因为设备可以一直运行最新版本的模块,其中包含安全、隐私和一致性方面的最新更新。这同时也为设备厂商、运营商和企业创造了巨大价值,他们不再需要升级整个系统,便能完成 OS 关键部分的性能优化与安全提升。

我们期望 Project Mainline 可以帮助应用和游戏开发者在所有设备上部署关键领域的平台实现,并逐渐提高平台一致性,从而降低开发与测试成本并保障应用的正常工作。所有运行 Android Q 或更高版本系统的设备将在不久后收到 Project Mainline 计划的推送。目前,我们正在与生态圈伙伴积极合作,确保各大厂商的设备尽早作好万全准备。

创新与新体验

Android 正处在创新的风口浪尖,在与生态圈合作伙伴的共同努力下,我们融合硬件和软件的前沿技术,力图带给用户前所未有的数字新体验。

折叠屏设备

世界各大顶级厂商在今年发布了多款折叠屏设备,这不仅为 Android 生态圈注入了源源活力,还标志着屏幕技术的又一飞跃。这些设备在折叠时相当于一部手机,而展开时又可当作精美的平板使用。

我们对 Android Q 进行了多项优化,确保折叠和展开操作发生时屏幕的无缝连续性,同时,应用与游戏的当前页面也可延续至另一个屏幕。在多任务处理方面,我们改进了 onResume 和 onPause 的工作模式,以便为 multi-resume 提供更好的支持,另外我们还添加了当应用获得焦点后的通知功能。为了帮助您管理应用在折叠屏及大屏上的显示,我们还更新了 resizeableActivity 属性的工作方式。

我们的合作伙伴已经推出了不少创新力十足的折叠设备,今后将会有更多设备陆续面世,敬请期待!您可通过 Android 3.5 Canary 版本配置一个折叠屏模拟器,现在就开始开发和测试您的应用。

视频连接: https://www.youtube.com/watch?v=4dIULf4ma_I

5G 网络

作为无线技术的新一轮革命,5G 技术意味着更快的速度与更低的延迟,赋能开发者解锁新的应用体验,或者升级现有功能。

Android Q 为 5G 增添了平台支持并扩展了现有 API,帮助您顺利完成应用的 5G 转型。您可使用网络连接 API (Connectivity API) 来检测设备是否具备高宽带连接以及它是否属于计费连接。这样一来,您的应用和游戏便可为用户定制丰富、沉浸度高的 5G 体验。

得益于 Android 开放的生态文化以及合作伙伴的鼎力相助,我们预计 5G 技术会很快迎来大规模商用时代。今年已有超过 12 家 Android 厂商发布了 5G 设备;全球也有超过 20 家运营商即将落地 5G 网络,其中部分运营商已实现大规模 5G 组网。

Live Caption

除硬件创新之外,我们还会继续利用 Android AI 技术推动软件革新,为更多用户打造更智能、更便捷的 OS 操作系统。其中,实时字幕 (Live Caption) 就是一个很好的例子,它是 Android Q 引入的一项新特性,当用户在手机上播放视频时,它便能为手机视频自动添加字幕。

许多人会选择收看带字幕的视频,因为这样一来,即使在路上或者拥挤的场所,他们依旧可以跟上视频播放的内容。但是,对于全世界 4 亿 6 千 6 百万听障人士而言,字幕不仅意味着简便,这赋予了他们触及内容的机会,而 Live Caption 正是 Google 与听障群体协同合作的成果。

视频连接: https://www.youtube.com/watch?v=YL-8Xfx6S5o

Live Caption 功能可以为手机上任何应用内的多媒体文件添加实时字幕,支持的文件类型包括视频、播客、语音信息和用户自录音频。而且,得益于我们在今年上半年在语音识别方面的突破性进展,该功能在无网络连接的条件下也可使用,所有工作都在设备端完成。实时语音模块在手机上离线运行,所有音频信息也不会泄露出设备。

对于开发者来说,由于 Live Caption 功能让数字媒体真正 "触" 指可及,因此它能为您的应用和游戏带来更多用户。Live Caption 功能将在今年下半年正式与大家见面。

通知内建议操作

我们在 Android Pie 中就已引入智能回复功能,让用户可以直接通过通知与应用发生互动。不过,尽管我们提供了用于附加回复和操作的 API,但是具体的构建代码仍旧需要由开发者自行编写。

在 Android Q 中, 我们可以希望在不增加开发者工作量的前提下,在所有应用内实现智能回复支持。从 Beta 3 开始,我们启用了由系统提供的智能回复和建议操作,在默认设置下,这些回复与操作会直接显示在通知内。

当然,开发者也可以为自己的应用设计专属的回复与操作,比如说通过 ML Kit 或者其它机器学习框架。如果您不想在通知内使用系统提供的回复和操作,只需调用 setAllowGeneratedReplies() 和setAllowSystemGeneratedContextualActions() 即可。

Android Q 智能建议功能与文本识别器实体识别服务一样,均由系统内置的设备端机器学习服务所驱动。我们在开发该功能的时候充分考虑了用户隐私安全的重要性,因此整个机器学习处理完全在设备上进行,全程不涉及后台服务器。

由于建议操作是基于 TextClassifier 服务开发的,因此它可以利用 Android Q 新引入的一些功能,如语言识别。您可直接通过 TextClassifier API 来生成由系统提供的通知与操作,必要时,也可与自行设计的回复和操作混合使用。

全局夜间模式

不少用户更喜欢使用具备夜间模式的应用。当光线变暗时,他们可转用夜间模式,这既有助于减缓眼部疲劳又能省电。与此同时,用户也希望 Android 可以提供一种更为简便的方式,让他们能在各种设备上启用夜间模式。夜间主题上榜热门请求已经有一段时间了,而 Android Q 终于把它带向了用户。

从 Android Q Beta 3 开始,用户可通过以下三种途径激活新的全局夜间模式:

(1) 点击设置,进入显示

(2) 新的快捷设置

(3) 启动省电模式。在夜间模式下,系统界面会变暗,而提供支持的应用也会同时启用夜间模式。您可选择为应用开发专属的夜间主题,或开启 "强制变暗" (Force Dark) 功能,让操作系统为现有主题重新创建一个夜间版本。您只需在应用的当前主题内设置 android:forceDarkAllowed="true" 即可。

您或许想要自己操刀设计应用的夜间主题,所以我们努力改进了 AppCompat 的 DayNight 特性。应用可以通过 DayNight 向所有 Android 用户提供夜间主题,完全不受系统版本的影响。更多内容,请阅读官方文档。

手势导航

许多最新款的 Android 设备都配有精美的无框屏幕,而用户也想要尽情享用大屏带来的极致体验。在 Android Q 中,我们引入了一款全新的手势导航模式。在该模式下,导航栏区域会处于隐身状态,应用和游戏的内容可以真正做到全屏显示。系统依旧保留了大家所熟悉的返回上一级、主界面和最近使用这三个功能,不过用户需要滑动屏幕,而非点击按钮,来进行操作。

用户需依次点击设置 > 系统 > 手势,来启用或关闭手势导航。目前系统支持的手势操作有以下两种: 从下向上滑动可返回主界面;从左或右边缘向内滑,则可触发返回上一级操作。

如需无缝集成手势导航功能,应用需要使用边到边全屏显示,并设计显示在导航栏背侧的内容,从而给用户带去沉浸式体验。为了实现这一点,应用首先得调用 setSystemUiVisibility() API 进行全屏布局,然后妥善处理 WindowInsets,确保关键 UI 界面清晰可见。更多内容,请参阅官方文档。

数字健康

数字健康是 Android 研发工作的第三个主题。我们想要为用户提供合适的工具,让他们可以直观地了解设备的使用情况,以更健康的方式使用数字产品。因此,我们在去年提出了数字健康这个概念,并将其整合至多个使用场景: 仪表盘 (Dashboard)、应用定时器 (App Timer)、勿扰模式 (Flip to Shush) 和放松模式 (Wind Down)。在这些工具的协助下,用户建立了一种更为健康的数字生活,其中,应用定时器让用户在 90% 以上的时间内集中注意力,专心完成既定目标,而放松模式则减少了 27% 的夜间使用时间。

今年,为了更好地帮助用户在数字生活中取得平衡,我们又添加了两款新工具——专注模式 (Focus Mode) 与 Family Link。

专注模式

如果您想在工作与学习时保持高度专心,集中精力完成某个任务,那么,专注模式便是您的不二之选。启用该模式后,您可以勾选可能会让您分心的应用,并屏蔽来自它们的推送,比如说,暂停使用邮件和新闻,但保持地图及短信应用处于活跃状态。当您想要集中注意力时,您可直接点击快捷设置内的专注模式。启用后,选定应用便会一直处于静音状态,直到设备退出专注模式。专注模式将在今秋登陆 Android 9 和 Android Q 设备。

Family Link

Family Link 是我们面向家长新推出的一套控制工具。从 Andrdoi Q 开始,Family Link 会作为系统功能出现在设置界面里。当您为小朋友设置新设备时,Family Link 会将设备连接至您的 Google 账号。接着,您便可为孩子的设备设定每日使用时限,了解他们的应用使用情况,或查看他们想安装的新应用,您甚至可以设置就寝时间,在该睡觉的时候断开设备连接。此外,Android Q 还允许您单独限制某几个应用的使用时间,或者适当延长设备的使用时间作为奖励,让孩子晚 15 分钟睡觉。我们将在今年秋天为 Android P 和 Android Q 设备添加 Family Link 功能。点击查看还有哪些出色的健康应用荣获了 "Google Play 2019 拥抱美好生活杰出应用" 大奖。

Family Link 允许家长设置就寝时间,并适当延长孩子的设备使用时间作为奖励

Android 基础

我们一直在增加核心功能的数量,努力塑造出更为强劲的 Android 基础,从而助力各位开发者为用户带去新体验,以下为我们目前在这个方面取得的一些成果与进展。

P2P及网络连接优化

在 Android Q 中,我们对 Wi-Fi 技术栈进行了重构,这不仅提升了应用在隐私及性能方面的表现,而且对许多常见用例也有一定的优化作用,如 IoT 设备管理以及建议网络连接等——而且无需应用请求位置权限。网络连接 API (Network Connection API) 让您能够更轻松地通过本地 WiFi 管理 IoT 设备,并使用配置、下载和打印等 P2P 功能。应用可通过网络建议 API (Network Suggestion API) 向用户显示偏好的 Wi-Fi 网络,并发起网络连接。

Wi-Fi 性能模式

在 Android Q 中,应用可启用高性能、低延迟的自适应 Wi-Fi 模式,在网络延迟比较敏感的场景下,如实时游戏、主动呼叫等,确保流畅的用户体验。一旦启用,Android 平台将与设备固件协同工作,实现最低能耗。如需启用新的性能模式,请调用 WifiManager.WifiLock.createWifiLock()。

完全支持高精度 Wi-Fi RTT 室内定位

Android 9 Pie 引入了 RTT API ,方便应用进行室内定位。该 API 可帮助应用计算 Wi-Fi 封包之间的往返时间,接而获取与附近 Wi-Fi 接入点 (AP) 的距离。接入点需支持 IEEE 802.11mc 协议。我们在 Android Q 中完善了对 IEEE 802. 11mc 标准的实现,新增加的 ResponderLocation API 可获取各个接入点的位置信息,它们由其所有者在安装时进行配置。

音频回放捕捉

我们在上文已经介绍过了 Live Caption 这个特性,有了它的帮助,任何应用中的音频文件都可被转化成文本,然后立即以字幕形式呈现在屏幕上。Live Caption 无缝体验为跨应用音频流分享提供了强劲的推动力。在 Android Q 中,所有支持音频播放的应用均可通过 AudioPlaybackCaptureConfiguration API 允许另一个应用捕捉它的音频流。除添加字幕以外,该 API 还可让您支持游戏直播等其它热门用例,而且完全不会对原应用或游戏造成延迟。

我们在设计这个新功能的时候也考虑了隐私和版权问题,因此应用间捕捉音频的能力是有限制的,开发者可以自行控制是否允许其它应用捕捉完整版音频文件。更多技术细节,请阅读官方文档。

图片动态深度

从 Android Q 开始,应用可在支持设备上请求生成动态深度图片,文件内包含与深度元素相关的 JEPG 与 XMP 元数据,并内嵌一组深度图与置信图。"JPEG 动态深度" 图片可以帮您在应用中实现模糊或散景效果。您甚至可以利用这些数据生成 3D 图片或为 AR 摄像用例提供支持。动态深度是一款供所有生态圈伙伴使用的开放格式——您可以了解最新的格式规格。目前,我们正在与各大设备厂商展开密切合作,希望尽早普及 Android Q (以及未来版本系统) 设备对该图片格式的采用率。

动态深度图片可帮助您在应用中实现模糊或散景效果全新的音频及视频解码器

Android Q 现已支持开源视频解码器 AV1,媒体供应商只需更少的带宽就能将高质量视频内容传输至 Android 设备上。此外,Android Q 还添加了对 Opus 音频格式的支持。Opus 编码器能自动识别输入信号是语音还是音乐,然后据此选择优化的编码模式。此外,用户也可在支持 HDR 10 的 Android Q 设备上,播放高动态范围视频。MediaCodecInfo API 为开发者判定 Android 设备的视频渲染能力提供了一种更为简便的方法。所有编码器都配有所支持文件体积和帧率的相关信息。

Vulkan 1.1 和 ANGLE

我们将继续扩展 Vulkan 在 Android 平台上的应用范围,努力将其打造成一低成本、跨平台的高性能 3D 图形 API。目前,我们正在与多家设备厂商合作,希望将 Vulkan 1.1 作为运行 Android Q 或更高版本系统的设备要求:对64 位设备为硬性要求,而对 32 位设备则为推荐配置。为了给使用 OpenGL 的游戏和图形开发者提供更强大的技术支持,我们正在为基于 Vulkan 的设备开发一款标准的、可更新的 OpenGL 引擎。此外,Android Q 还在在 Vulkan 基础上为 Android 设备添加了ANGLE 实验性支持。更多信息,请参阅 Android官方文档。

神经网络 API 1.2

我们在神经网络 API 1.2 中新增了 60 个算子,包括 ARGMAX、ARGMIN、量化 LSTM,以及大量性能优化,为广泛的模型加速奠定了坚实的基础,如目标检测模型和图像分割模型。我们现在正在和硬件合作伙伴以及主流机器学习框架提供商 (如 TenserFlow) 展开积极合作,共同推进神经网络 API 1.2 优化及支持工作。

热感 API

当设备过热时,CPU 和 GPU 便无法正常工作,这会对应用和游戏的运行造成严重影响。从 Android Q 开始,应用和游戏可通过热感 API (Thermal API) 监测设备的温度变化,并采取对应措施让设备降回正常温度。比如说,流媒体应用可降低分辨率/或比特率或网络流量,相机应用可以禁用闪光或图像增强,游戏则可选择降低帧率或减少曲面细分中的多边形数量。更多信息,请阅读官方文档。

ART 运行时优化

Android Q 大幅改进了 ART 运行时。开发者无需进行任何操作,便可有效缩短应用的启动时间,减少内存消耗,并提高应用的运行流畅度。为了加快应用的初始启动速度,Google Play 现在除了 APK 文件之外,还会提供基于云的配置文件。这是一套已经过匿名化处理的汇总 ART 配置文件,允许 ART 在应用开始运行之前就预编译一部分代码。基于云的编译文件适用于所有应用,而且运行 Android P 或更高版本系统的设备目前已提供相关支持。

此外,我们还在 ART 的并发复制垃圾收集器 (Concurrent Copying Garbage Collector) 中添加了分代收集机制 (Generational Garbage Collection)。分代算法可以将新生代的对象单独收集出来,与 full-heap GC 相比成本更小。引入分代算法后,ART 垃圾回收速度和 CPU 利用效率有了明显提升,在减少垃圾的同时,让应用可以在低端设备上更流畅地运行。

更多 Android Q Beta 支持设备,Treble 项目继续发力

在 2017 年 Android Oreo 发布之际,我们同时也推出了 Project Treble 计划,目的是加快 OS 操作系统的更新步伐。Project Treble 计划提供了一套稳定且可测试的接口,用于连接 Android 操作系统及由设备厂商和芯片厂商编写的底层代码,大大提高了新版本系统移植的简便性和模块化程度。

我们在 2018 年与合作伙伴展开紧密合作,首次在 Treble 设备上实现 OS 系统更新,并取得了喜人的成果: 在去年的 Google I/O 大会上,除了 Google 出品的 Pixel 和 Pixel 设备之外,另有来自 7 家合作厂商的 8 款机型加入了 Android P Beta 项目。时至今日,我们看到 Android Pie 更新速率大幅加快,与去年同时间的 Android Oreo 发布相比,支持设备的数量上涨至 2.5 倍。

待到今年推出 Andoid Q 之时,Project Treble 计划的势头愈发强劲,除了 Pixel 全线机型之外,共有来自 12 家全球顶级设备厂商的 15 款机型支持推送 Android Q Beta 3。我们同时提供了 Q Beta 3 GSI 通用系统映像。它们均提供相同的行为、API 和特性,让您可以在超多款设备上测试应用,通过多种途径尝鲜试用 Android Q。

请访问 android.com/beta,获取完整版支持机型及 Pixel 设备列表。立即选择您最喜欢的设备,上手一试 Android Q Beta并向我们分享您的使用感受吧!

探索新特性和 API

当您准备就绪后,请进一步探索 Android Q, 了解可在应用中使用的诸多新特性及 API。请阅读 API 差异报告了解 Beta 3 中引入的变更,或阅读 Android Q Beta API 参考文档,获取详细技术细节。此外,我们也在 Android Q Beta 开发者官网为您准备了更多资源,如版本说明和报错指南。

如果您想为 Android Q 开发应用,只需将 Android Q Beta SDK 和工具下载到 Android Studio 3.3 或更高版本,并按照步骤配置开发环境。 如果需要 Android Q 行为变更的最新修复,建议您使用 Android Studio 3.5 (或更高版本)。

如何获取 Beta 3 ?

获取步骤很简单! Pixel 用户请加入 Beta 测试计划并获取更新。如果您已加入,无需任何行动,设备将很快收到更新推送。此外,系统镜像文件也已开放下载。

Android Q Beta 测试计划中的其它设备也会收到 Beta 3 更新推送,这些设备同样也由 Google 的顶级设备合作商提供。请访问 android.com/beta 查看全部的支持机型和 Pixel 设备,每款设备都提供了详细的配置参数和官网链接,您可前往对应网站进行下载、获取支持或反馈问题。

为了能在支持测试设备上进行更多测试,您可下载 Android GSI 通用系统映像。如果暂时没有可以运行 Android Q 的设备,您也可以使用模拟器进行测试,请通过 Android Studio 中的 SDK Manager 下载最新版本的模拟器系统映像。

您的反馈意见对我们非常重要,欢迎您在下方评论区留言或点击这里 提交产品反馈建议,分享您的使用感受、想法与建议。我们已经收到了许多宝贵的反馈,目前,我们正在紧锣密鼓地进行 Beta 4 的开发工作,希望可以尽多地整合大家的意见与建议。

期待您的应用在 Android Q 上的精彩表现!

点击这里提交产品反馈建议

0 人点赞