经过一年多的开发和长达数月的早期使用者测试,Android 10 终于准备好和您见面了!
Android 10 聚焦移动创新、安全隐私和数字健康三大主题,全面打造最佳用户体验。首先,Android 10 利用前沿机器学习技术,助力折叠屏、5G 等新型设备,勇于突破传统技术壁垒,让用户畅享最具创新力的移动体验。其次,Android 10 注重安全与隐私,引入了近 50 个安全特性,力图为用户带去更强大的安全防护,以行动践行公开透明原则,并赋予用户更多控制权。第三点,Android 10 进一步优化了平台的数字健康功能,帮助用户和家庭更好地实现科技与生活之间的平衡。
我们已将 Android 10 源代码发布至 Android 开源项目 (AOSP),并向更多生态圈伙伴开放了最新版本的 Android 平台。从今天开始,全球 Pixel 设备将陆续收到官方 Android 10 更新推送。包括 Android Beta 机型在内的多款合作设备将于年底前获取系统更新通知。
非常感谢大家对今年 Beta 项目的大力支持——超过 20 万用户在 26 款 Beta 设备上参与了早期版本的测试,并针对这些设备提出了相应的错误报告,共计 20,000 份。除了 Beta 项目以外,我们还通过文章专栏、社区讨论、用户调研和面对面会议等多种渠道聆听开发者心声,了解大家在应用适配方面遇到的挑战和困难。您的支持和参与让 Android 成为独一无二的卓越移动平台。众多 OEM 合作伙伴和广大开发者为新版本 Android 注入了前所未有的鲜活动力。我们十分荣幸,同时也心怀感激,能够与充满热情的开发者社区一同打造更棒的 Android!
如果您想为 Android 10 开发应用,请前往 developer.android.google.cn/10
Android 10 新特性
Android 10 引入了多项新特性和重要变更,等待各位开发者和用户前来探索!请下拉阅读,快速了解 Android 10 的出众之处,同时学习如何利用这些特性开发出更棒的应用。更多精彩内容,请阅读《Android 10 的十大技术创新》。
创新与新体验
在 Android 10 中,开发者得以借力软硬件尖端技术,着力塑造丰富多彩的用户体验。
折叠屏: Android 10 提供强大的多屏幕支持,扩展了现有的同屏多任务功能,方便用户在应用间进行窗口切换。此外,屏幕连续性也有所改善,帮助应用在设备展开或折叠时保持界面状态。如果想了解更多有关折叠屏适配的内容,请阅读《打造适用于可折叠设备的应用》官方文档。
点击查看腾讯视频: v.qq.com/x/page/u092…
5G 网络: 5G 技术可大幅提高数据传输速度并降低延迟。Android 10 提供 5G 平台支持,并对现有 API 进行了扩展,全面助力开发者利用 5G 技术推动应用创新。您可调用网络连接 API (connectivity API) 判定设备是否可以高速联网,以及当前的网络是否计费。透过这些能力,希望您能开发出更加丰富的沉浸式 5G 体验应用。
Live Caption:可以为正在播放的多媒体文件自动生成字幕。该功能支持任何应用中的多媒体文件,包括视频、播客和语音信息。机器学习语音模块在离线运行,所有音频流不会离开设备。开发者可自行选择是否添加 Live Caption 功能,但我们相信一旦启用后,该功能可以为您的应用和游戏带来更多用户。Pixel 设备将在今秋引入 Live Caption,我们也在和各大厂商积极合作,希望尽快在 Android 10 设备上普及这项功能。
- 视频地址: www.youtube.com/watch?v=YL-…
通知中的智能回复: Android 10 利用设备内置机器学习技术,在通知中显示与当下场景相关的建议操作,例如消息智能回复,或者当通知中包含地址信息时,建议用户开启地图应用。我们在开发这项功能时也考虑到了用户隐私问题,因此所有的机器学习任务完全在设备本地执行。不如立即上手一试,为应用添加由系统生成的回复和操作;当然,如果您想自行为应用设计通知内容,亦可选择停用该功能。
智能回复功能会根据通知内容向用户提供建议操作深色主题: Android 10 添加了系统全局深色主题,让用户可以在光线较暗的环境中更轻松的使用设备,并且大幅度减少设备耗电量。您可为应用添加自定义深色主题,或者让操作系统为现有主题动态创建一个深色版本。更多技术细节,请参阅《深色主题》官方文档。
深色主题背景下的 Google Keep
手势导航: Android 10 引入了手势导航模式,这一功能启用后,原有的底部导航栏设计会消失,让应用真正实现全屏显示,为用户创造更丰富、沉浸度更高的数字体验。请阅读《手势导航》官方文档,学习具体的优化步骤。
手势导航允许应用全屏显示内容用户隐私
用户隐私是 Android 10 的开发重点之一,从平台的安全性改进,到以隐私为中心的新特性设计,团队从多个维度发力,为用户提供最强大的安全保护。为了提供更好的隐私保护并提高用户可控性,Android 10 在之前几个版本的基础上引入了多项变更,例如: 改进系统 UI,更严格的权限管理和数据使用限制等。请前往 Android 10 开发者官网,了解更多技术细节,学习如何在应用中支持这些变更。
给予用户更多地理位置控制:为了提高用户的可控性,用户可以通过一个全新的地理位置权限,仅允许正在被使用的应用 (运行在前台) 访问设备位置信息。该权限等级能够满足大部分应用的要求,同时也更好地保障了数据透明和权限控制方面的用户权益。请阅读《定期接受位置更新》和《Android Q 让用户优雅地管理位置权限》,获取更多有关位置权限变更的相关信息。
在网络扫描中保护位置数据: 大部分网络扫描 API 已要求获取 COARSE 位置权限,但是 Android 10 加强了这些 API 的安全防护,要求必须获取 FINE 位置权限。
防止设备追踪: 为了防止应用追踪设备,Android 10 不允许一般应用访问 IMEI 码、序列号等不可重置的设备识别号。当应用连接至 Wi-Fi 网络时,设备的 MAC 地址将默认被随机化处理。请仔细阅读最佳实践,为您的用例选择正确的识别号。更多内容,请阅读《Android 10 隐私权变更: 不可重置的设备识别号限制》官方文档。
外部储存中的用户数据保护: Android 10 引入多项变更,给予用户更多控制权用于管理外部储存中的文件以及其中的应用数据。应用可以在私有沙盒中储存自有文件,但是必须使用 MediaStore 才能访问共享多媒体文件,或使用系统选择器来访问下载集合中的共享文件。请阅读《Android 10 隐私权变更: 外部储存中的应用文件及多媒体》,获取更多内容。
防止意外干扰: Android 10 禁止应用突然从后台跳转至前台,分散用户对当前应用的注意力。更多内容,请参阅《Android 10 隐私权变更: 针对后台 Activity 启动的限制》官方文档。
安全
我们不断地评估在 Android 安全方面地投入,我们将其称之为可衡量的安全。第三方机构发布的分析报告是重要的参考依据之一,比如说,Gartner 在 5 月发布了一份《2019 年度移动操作系统和设备安全报告》(订阅后才能阅读完整版报告),该报告针对身份验证、网络安全、恶意软件防护等 30 个项目进行打分,Android 在其中 26 项上夺得最高分。如果您想知道我们在改善平台安全方面作出了哪些长期努力,请阅读《量化可衡量的安全》。不过,安全防护是一场没有终点的探索,因此,我们为 Android 10 引入了更多的安全特性,围绕加密技术、平台加固和身份认证进行了多方位升级。
储存加密: 我们要求所有出厂系统为 Android 10 的兼容设备都必须对用户数据进行加密。为了提高储存加密效率,Android 10 提供了一个新的加密模式——Andiantum。
默认启用 TLS 1.3: Android 10 默认启用 TLS 1.3 支持。作为 TLS 标准的一次重要更新,TLS 1.3 在性能和安全方面均有显著提升。
平台强化: Android 10 强化了平台内几大关键安全领域的防护工作,并更新了 BiometricPrompt 底层框架,增强了隐式和显式验证流程中对面部识别和指纹识别的支持。更多内容,请阅读《Android Q 中的安全性更新》。
摄像头和媒体
图片动态深度:应用可在支持设备上请求生成动态深度图片,文件内包含与深度元素相关的 JEPG 与 XMP 元数据,并内嵌一组深度置信图。它可帮助您在应用中实现模糊或散景效果。动态深度是一款供所有生态圈伙伴使用的开放格式。目前,我们正在与各大设备厂商展开密切合作,希望尽早普及 Android 10 (以及未来版本系统) 设备对该图片格式的支持。
动态深度图片可帮助您在应用中实现模糊或散景效果音频回放捕捉:所有支持音频播放的应用均可允许另一个应用通过全新的音频回放捕捉 API 获取自己的音频流。该 API 能够让您实现添加字幕、游戏直播等热门用例。我们在开发这项功能时也考虑到了用户隐私和版权问题,因此跨应用获取音频的能力受到一定的限制。更多内容,请阅读《Android Q 音频获取指南》。
新的音频与视频编解码器: Android 10 为开源视频编解码器 AV1 添加了支持,媒体供应商只需更少的带宽就能将高质量视频内容传输至 Android 设备上。Android 10 还支持 Opus 编码的音频内容,Opus 是一款专为语音和音乐流媒体文件推出的免费开源编解码器。此外,用户也可在支持 HDR 10 的设备上,播放高动态范围视频 。
原生 MIDI API: 针对使用 C 代码处理音频文件的应用,Android 10 引入了一款原生 MIDI API,让应用可以通过 NDK 与 MIDI 设备进行通讯。应用可在音频的回调函数中通过非阻塞方式读取 MIDI 数据,达到低延迟的 MIDI 信息处理效果。欢迎大家试用参考示例应用,并参考其源代码。
随时随地,尽享 Vulkan: 我们要求所有运行 Android 10 或更高版本系统的 64 位设备必须支持 Vulkan 1.1,对于 32 位设备则为推荐配置。我们已经看到了 Android 生态圈对 Vulkan 的强力支持,在运行 Android N 或更高版本的设备中,超过半数提供了 Vulkan 1.0.3 (或更高版本) 支持。随着 Android 10 的新规定落地,我们预计会有更多设备在未来一年内支持 Vulkan。
网络连接
P2P 及网络连接优化: 在 Android 10 中,我们对 Wi-Fi 堆栈进行了重构,这不仅提升了应用在隐私及性能方面的表现,而且对许多常见用例也有一定的优化,如 IoT 设备管理、显示可用网络等——均无需请求位置权限。网络连接 API (connectivity API) 让您可以更轻松地管理 IoT 设备,并使用配置、下载和打印等 P2P 功能。网络建议 API (network suggestion API) 允许应用向用户显示推荐的 Wi-Fi 作为网络连接选项。
Wi-Fi 性能模式: Android 10 允许应用启用高性能、低延迟的自适应 Wi-Fi 模式,这样一来,即使是在网络延迟比较敏感的场景下,如实时游戏、音频通话等,应用依旧能保障流畅的用户体验。在性能模式下,Android 平台将配合设备固件协同工作,实现最低能耗。
Android 基础
ART 优化: Android 10 针对 ART 运行时引入了多项改进。开发者无需进行任何操作,便可有效缩短应用的启动时间,减少内存消耗,保证流畅运行。Google Play 交付的 ART 配置文件允许 ART 在应用运行之前就预编译一部分代码。在运行时,分代垃圾回收 (Generational GC) 机制使得 CPU 利用效率有了明显提升,在减少卡顿的同时,让应用得以在低端设备上更好地运行。
使用 Play 配置文件后,应用启动时间有所缩短神经网络 API 1.2: 我们在神经网络 API 1.2 中新增了 60 个算子,其中包括 ARGMAX、ARGMIN、量化 LSTM,以及大量的性能优化,这为模型加速奠定了坚实的基础,如目标检测模型和图像分割模型。目前,我们正在和硬件以及主流机器学习框架厂商 (如 TensorFlow) 展开积极合作,共同推进神经网络 API 1.2 的优化和支持工作。
加快更新,尝鲜体验
新平台的普及依旧是 Android 10 的工作重点之一,我们继续与设备厂商以及高通等芯片合作伙伴展开紧密合作,争取更快将 Android 10 带向更多设备。Treble 项目在此扮演着十分关键的角色,在该项目的帮助下,18 款合作伙伴设备和 8 款 Pixel 设备加入了今年的 Android Beta 项目,Beta 机型数量比去年多了一倍。更棒的是,我们预期这些设备在年底之前均会收到 Android 10 的官方更新推送,与此同时,我们也在与合作伙伴携手推进新旗舰机型的发布与升级工作。我们已经感受到了 Android 10 的澎湃动力,与之前几个版本相比,将有更多用户会在接下来的几个月内亲身体验新版本系统带来的强大表现。
此外,Android 10 也是首个支持 Mainline 项目 (官方名称为 Google Play 系统更新) 的版本。Mainline 项目旨在为 Android 用户提供高质量安全保障,并且确保用户设备能够直接从 Google Play 获取最新的重要系统更新。在 Google Play 系统更新的帮助下,用于不再需要设备厂商提供全量系统更新,而可以在运行 Android 10 或更高版本的设备上直接更新特定的系统组件。我们计划在接下来的几个月内向消费者设备开始推送更新。
对于开发者而言,我们希望 Android 10 中的这些更新能够有效提高系统组件在不同设备上的一致性,为大家提供更加统一的开发体验,进而降低开发与测试成本。
将您的应用适配至 Android 10!
随着 Android 10 正式发布,更多设备将很快收到更新推送,请各位开发者尽快开始升级工作,确保现有应用在新系统上的兼容性,帮助用户平滑过渡到 Android 10。
具体操作如下:
- 在 Android 10 上安装您的应用: 请从应用商店下载您的应用,并安装至 Pixel 设备或者其他运行 Android 10 的设备或模拟器,然后进行测试。您的应用应该运行流畅,界面美观,实现完整功能,并妥善处理 Android 10 的各项行为变更。请注意隐私变更、手势导航、生物验证库的动态链接路径变化等各项特性带来的影响。
- 测试 Android 10 的隐私特性,如新的位置权限、分区储存、限制从后台启动 activity、关于数据和设备识别符方面的变更等。请查看隐私特性清单并阅读行为变更文档,了解更多需要测试的范围。
- 测试应用正在使用的受限制的非 SDK 接口,并尽快转用公开 SDK 或 NDK 替代接口。请阅读《非 SDK 接口在 Android 10 中的受限情况出现变化》获取更多信息。
- 测试应用中的开发库和 SDK: 如果您发现任何问题,请尝试更新到最新版本的 SDK, 或联系 SDK 开发者以获取帮助。
- 更新并发布兼容 Android 10 的应用: 在测试完毕并进行必要更新后,我们建议您立即发布适配后的应用。这会帮助您的用户顺利完成 Android 10 的升级和过渡。
针对新版本 Android 测试并适配应用对加快整个生态圈内的平台更新速度至关重要,因此,请各位开发者尽可能优先处理 Android 应用的适配工作。
利用 Android 10 特性和 API 提升您的应用
一切准备就绪后,请您尽情探索 Android 10,并了解可供应用使用的新特性与 API。我们从中挑选了一些最重要的特性,您可以从这些特性着手,逐步提升应用的性能和体验。
我们建议所有应用支持以下特性:
- 深色主题: 为了确保用户在启用全局夜间模式后能够享受到一致的体验,请您在应用中添加深色主题,或启用 Force Dark 功能。
- 支持手势导航: 为用户提供边到边的视觉体验,同时确保应用的自定义手势与系统手势互相配合。
- 适配折叠屏: 针对折叠屏为应用进行优化,以便在现代创新设备上实现无缝体验。
如果下列特性与您的应用相关,我们建议您添加相应支持:
- 互动性更高的消息通知: 如果您的通知中包含消息,请启用通知内的智能回复及建议操作,以增强用户互动,并让他们可以立即采取行动。
- 更好的生物验证支持: 如果应用需要处理生物验证用例,推荐您使用 BiometricPromt,它是在现代设备上支持指纹身份验证的首选方式。 音频回放捕捉: 如需支持字幕生成或游戏录制,请在应用中启用音频回放捕捉功能。这能让您的应用惠及更多用户,并更好地支持无障碍体验。
- 更好的编解码器: 媒体应用请利用 AV1 进行视频传输,并通过 HDR 10 播放高动态范围视频;语音和音乐应用请使用 Opus 进行音频编码。另外,我们还为音乐工作者提供了原生 MIDI API。
- 更好的网络连接 API: 如果您的应用通过 Wi-Fi 管理 IoT 设备,不妨试一下新的网络连接 API (network connection API) 来执行配置、下载或打印等功能。
请前往 Android 10 开发者官网查看完整列表。
如果您要面向 Android 10 开发应用,请将 API 29 SDK 和工具下载至 Android Studio 3.5 稳定版或更高版本,然后按照操作步骤配置环境。
即刻升级设备!
我们已经向三代 Pixel 设备 (Pixel 3, Pixel 3a, Pixel 2 和初代 Pixel) 推送 Android 10 更新包。所有 Pixel 设备以及参加 Android Beta 项目的合作伙伴机型将于下周内收到更新通知。如果您是 Pixel 用户,请留意设备收到的官方更新推送!
Pixel 设备专用的系统映像文件目前已开放下载,支持手动刷机。您也可以通过 Android Studio 中的 SDK Manager 获取最新版本的 Android 模拟器系统映像文件。如果想在其它 Treble 支持机型上进行广泛测试,请下载 GSI 通用系统映像文件。
如果您有兴趣学习 Android 10 的源代码,请前往 Android 开源项目 (AOSP) 官网,并查看 Android 10 分支下的代码库。
下一步
我们将在不久后关闭 Android Beta 问题跟踪渠道,但是请各位开发者继续向我们提供反馈。如果您遇到任何有关 Android 10 的问题,请通过 AOSP 问题跟踪渠道提交新的错误报告。
再次感谢开发者和早期用户对 Android Beta 项目的热心参与!大家的积极反馈和数千条问题报告造就了更卓越的 Android 10 平台,并惠及更多的开发者与用户。
期待您的应用在 Android 10 上的精彩表现!