查看原文
其他

Android Q Beta 2 已上线!我们来看看都做了哪些更新

Android 谷歌开发者 2019-05-01


我们在几周前发布了 Android Q 的首个 Beta 版,让大家尝鲜体验了下个版本的 Android 系统。除用户隐私方面的特性更新之外,Android Q 还为开发者们带去了许多新功能,如折叠屏增强项、新网络连接 API、全新的媒体解码器、摄像头新功能、NNAPI 扩展、Vulkan 1.1 图形支持等等。


开放是 Android 的核心发展理念,秉持这个理念,我们与各个社区积极合作,面向全球开发者推出了早期预览版计划。在 Beta 1 发布之后,大家的踊跃反馈再次证明了开放的价值所在——这些反馈明确、清晰而且富有价值。我们收到了数千份错误报告,也收获了许多洞见与指向性反馈。基于这些反馈,我们对平台计划进行了修正与优化,力求为用户和开发者打造更好的 Android 平台,所以,请大家拭目以待我们的后续成果。Android Q 的进步离不开充满激情的开发者社区,对此我们深感荣幸,也表示感激,相信在大家的支持与指导下,即将发布的正式版 Android Q 一定会更加出色!


今天,我们正式推出 Android Q Beta 2 及更新版 SDK,其中包括其中包括最新的错误修复,稳定性优化和一些微调,以及 2019 年 4 月发布的安全更新。您或许还注意到隔离储存也是本次更新的一大重点,我们希望更多开发者能参与测试并给予反馈,帮助我们完善这项特性。


Android Q 目前只推出了两个早期 Beta 版本,因此还有不少地方有待打磨。请在安装前阅读《已知问题》。特别是,我们发现当开发者更新完应用并准备向早期 Beta 版平台迁移时,很有可能会遇上一些常见的过渡问题。


请加入 Beta 体验计划,在 Pixel 设备上获取推送更新。如果您已经加入计划,设备将很快收到 Beta 2 的更新通知。我们将在 5 月举办 2019 Google I/O 开发者大会,届时会有更多精彩内容与您相见,敬请期待!


  • 数千份错误报告

    https://issuetracker.google.com/hotlists/1501303

  • 给予反馈

    https://developer.android.google.cn/preview/bugs

  • 《已知问题》

    https://developer.android.google.cn/preview/release-notes

  • Beta 体验计划

    https://www.google.com/android/beta

  • 2019 Google I/O 开发者大会

    https://events.google.com/io/



测试隐私特性并给予反馈


正如我们在发布 Beta 1 时表示的一样,Android Q 在之前几个版本的基础上,大幅提升了用户隐私方面的安全防护。我们的目标是向用户提供更透明、更完善的管控机制,进而保障用户信息在平台和应用内的安全。为了实现这一目标,我们需要每一位开发者的帮助。我们意识到支持这些特性也是对开发者有益的一项投入,因此我们会尽最大努力将应用所受影响减至最低。


我们会尽早与大家分享分区储存 (Scoped Storage) 等特性的相关计划,争取为您预留充足的时间来进行测试并提交反馈或错误报告。为了收集更多反馈,Beta 2 中新安装的应用将默认启用分区储存特性,以便您及时了解应用受影响的部分。


引入分区储存这一特性后,应用在无需权限的情况下仍可使用私有沙箱,但是必须请求新的权限,才能访问共享的图片、视频以及音频。因此,使用共享文件的应用可能会无法正常工作,比如说,影像库及选择器、媒体浏览和文件储存。


我们建议您尽早开始使用分区储存特性。请阅读开发者指南,获取更多技术细节并学习如何处理关键用例。在测试时,请务必通过 adb 命令在应用内启用该特性。如果您发现应用涉及分区储存暂不支持的用例,请通过填写问卷的方式及时告知我们。感谢大家一直以来的宝贵反馈,推动我们在优化特性的征途上一路前行。


  • 之前几个版本

    https://android-developers.googleblog.com/2018/12/android-pie-la-mode-security-privacy.html

  • 大幅提升了用户隐私方面的安全防护

    https://developer.android.google.cn/preview/privacy

  • 分区储存 (Scoped Storage)

    https://developer.android.google.cn/preview/privacy/scoped-storage

  • 提交反馈或错误报告

    https://issuetracker.google.com/issues/new?component=190602&template=1245332

  • 开发者指南

    https://developer.android.google.cn/preview/privacy/scoped-storage

  • adb 命令

    https://developer.android.google.cn/preview/privacy/scoped-storage#toggle-behavior-change

  • 填写问卷

    https://docs.google.com/forms/d/e/1FAIpQLSdhhKVRKp1a7lj5XsQJ6rN9HyJ8d9WGPcdGwmTibWfhPUmj_g/viewform?vc=0&c=0&w=1&usp=mail_form_link



Beta 2 有哪些更新?


Bubbles: 多任务管理新方法

在 Android Q 中,我们为 Bubbles 引入了平台支持。不同于传统方式,Bubbles 为多任务管理以及应用二次互动开辟了一条全新的道路。许多应用已经内置了类似的交互功能,而我们从中挑选出最优秀的用例,并将它们整合到 Android 平台,助您在打造统一交互体验,保护用户隐私,缩短开发时间的同时,推进应用创新。

用户可利用 Bubbles 轻松切换活动并实现多任务管理

Bubbles 能帮助用户优先处理重要信息,并在不改变当下使用场景的前提下,允许用户在一个应用的深层对另一个应用进行操作。即使用户在设备上切换不同应用窗口,也可随时享用特定应用的功能。


Bubbles 对于应用通知十分有用,因为在它的协助下,用户可以轻松访问重要会话,查看当前任务及最新更新,如通话或抵达时间。此外,它还允许用户快速跳转至便签、翻译等通用的轻量 UI 界面,并通过可视化的方式向用户显示任务清单。


我们基于 Android 通知系统开发出了 Bubbles,目的是为开发者们提供熟悉且易用的 API。如果您想为通知添加 Bubbles 功能,请调用 setBubbleMetadata 向应用添加一个 BubbleMetadata。您可在此元数据内创建一个 Activity,让应用可以在 Bubble 内显示内容、图标 (在 Beta 2 版本内被 disabled ) 和关联 person


我们的 Bubbles 之旅才刚刚开始,欢迎大家积极试用,并向我们反馈您的使用感受。获取示例实现


  • setBubbleMetadata

    https://developer.android.google.cn/reference/android/app/Notification.Builder#setBubbleMetadata(android.app.Notification.BubbleMetadata)

  • BubbleMetadata

    https://developer.android.google.cn/reference/android/app/Notification.BubbleMetadata

  • 图标

    https://developer.android.google.cn/reference/android/graphics/drawable/Icon

  • person

    https://developer.android.google.cn/reference/android/app/Person

  • 反馈您的使用感受

    https://issuetracker.google.com/issues/new?component=190602&template=1226573

  • 示例实现

    http://github.com/googlesamples/android-Bubbles


折叠屏模拟器

Android 生态圈正在向可折叠设备的快速迈进,值此契机,开发者们不妨紧跟新型屏幕的浪潮,为用户创造更多好玩有趣的应用体验。为了帮助大家顺利开发折叠屏应用,Beta 2 带来了更强的 Android Q 平台支持和一款全新的折叠设备模拟器。赶快通过 Canary 发布渠道下载 Android Studio 3.5 并安装最新的 AVD 虚拟设备,上手试一试吧!

7.3 英寸折叠平设备切换折叠/展开状态

在平台方面,我们对 onResume 和 onPause 进行了多项改进,以便为 multi-resume 提供更好的支持,此外,我们还添加了应用获得焦点后的通知功能。为了帮助您管理应用在折叠屏及大屏上的显示,我们还更新了 resizeableActivity 属性的工作方式。


如果您想为应用搭建一个运行时环境,只需在 Android Stuido 中配置一个折叠屏模拟器作为虚拟设备 (AVD) 即可。折叠屏 AVD 是一款用于测试标准硬件配置、行为和状态的参考设备,我们的设备合作伙伴也会采用相同的 AVD。为了确保兼容性,AVD 符合 CTS/GTS 要求以及 Android 兼容性定义文档 (CDD) 中的相关规定。此外,它还支持运行时配置变更、multi-resume 和新的 resizeableActivity 行为。


从 Android Studio 3.5 Canary 版本开始,您可创建一个运行 Beta 2 的折叠屏虚拟设备,其支持的硬件配置分别为 7.3 英寸 (折叠后为 4.6 英寸) 以及 8 英寸 (折叠后为 6.6 英寸)。在两个配置中,模拟器均允许您通过屏幕控制来触发折叠/展开操作,旋转屏幕方向以及快速操作。

Android Studio - AVD 管理器: 折叠屏设备设置

想看看自己的应用在折叠屏虚拟器上表现如何吗? 请马上下载 Android Studio 3.5 Canary 版本,并配置一个使用 Android Q Beta 2 系统镜像文件的折叠屏 AVD 虚拟机。


  • onResume

    https://developer.android.google.cn/reference/android/app/Activity.html#onResume()

  • onPause

    https://developer.android.google.cn/reference/android/app/Activity.html#onPause()

  • resizeableActivity

    https://developer.android.google.cn/guide/topics/ui/multi-window#resizeableActivity

  • 运行时配置变更

    https://developer.android.google.cn/guide/topics/resources/runtime-changes

  • resizeableActivity

    https://developer.android.google.cn/guide/topics/ui/multi-window#resizeableActivity

  • Android Studio 3.5 Canary 版本

    https://developer.android.google.cn/studio/preview


改进后的 sharesheet

自 Beta 1 首次推出 Share Shortcuts API 以来,开发者可通过以下两种方式创建可分享的内容预览: (1) 在 Intent 内为标题提供一个额外的 EXTRA_TITLE,(2) 将 Intent 的 ClipData 设置为缩略图。更多实现系列,请查看更新后的示例应用


  • Share Shortcuts API

    https://developer.android.google.cn/preview/features/sharing#sharesheet

  • EXTRA_TITLE

    https://developer.android.google.cn/reference/android/content/Intent.html#EXTRA_TITLE

  • ClipData

    https://developer.android.google.cn/reference/android/content/ClipData

  • 示例应用

    https://github.com/googlesamples/android-SharingShortcuts


指向性且可变焦的麦克风

在音频采集方面,Android Q Beta 2 利用新的 MicrophoneDirection API 给予应用更多控制。您可通过该 API 指定麦克风录音时的偏好方向,比如说,当用户录制自拍视频时,您可调用 setMicrophoneDirection(MIC_DIRECTION_FRONT),要求前置麦克风负责收音工作 (如果设备配有前置麦克风)。


另外,该 API 还针对变焦麦克风引入了一套标准控制模式,允许应用通过 `setMicrophoneFieldDimension(float)` 调整收音范围。


  • MicrophoneDirection

    https://developer.android.google.cn/reference/android/media/MicrophoneDirection


与公开 API 兼容

在 Android Q 中,我们将继续推进把所有应用迁移到公开 API 这一长期任务。我们已经在 Beta 1 中引入了大部分新限制,而 Beta 2 则在该限制名单的基础上稍作改动,希望借此将应用受影响程度降至最低。我们的目标是在施加访问限制前,为各个有效用例提供可替代的公共 API,因此,如果您在 Android 9 Pie 中调用的接口已列入受限名单,请您为所需的接口申请一个新的公开 API


  • 所有应用迁移到公开 API 

    https://developer.android.google.cn/distribute/best-practices/develop/restrictions-non-sdk-interfaces

  • 申请一个新的公开 API

    https://android.devsite.corp.google.com/distribute/best-practices/develop/restrictions-non-sdk-interfaces#feature-request



轻松上手 Android Q Beta


本次更新包含适用于所有 Pixel 设备和 Android 模拟器的 Beta 2 系统镜像文件,以及更新版 SDK 和工具。有了系统镜像和开发工具后,您便可针对新平台测试应用,并利用最新 API 进行构建。


首先,请确保您的应用兼容,让用户 (包括已加入 Android Beta 项目的用户) 得以无缝过渡至 Android Q。第一步,请从应用商店下载您的现有应用,并将其安装至 Beta 2 设备或模拟器,并着手用户流程方面的工作。应用必须运行流畅且界面美观,且能够妥善处理各项 Android Q 行为变更。如果您遇到任何问题,我们建议您在现有应有中进行修复,无需变更应用的目标等级。请阅读《迁移指南》,了解具体操作步骤及关键时间节点。


鉴于 Android Q 引入了多项重要的隐私特性,尤其是 Beta 2 激活的部分特性,它们可能会对您的应用造成影响,因此我们建议您立即开展测试工作。请您格外留意应用对分区储存新的位置权限后台 Activity 启动限制以及设备识别号限制的适应情况。请阅读隐私清单,了解相关的变更内容。


接下来,请您尽快将应用的 targetSdkVersion 更新至 'Q',以便在应用中测试 Android Q 的全部隐私及安全特性,以及其它目标平台为 Q 的行为变更


  • 所有 Pixel 设备

    https://g.co/androidbeta

  • Android 模拟器

    https://developer.android.google.cn/studio/run/managing-avds.html

  • Android Q 行为变更

    https://developer.android.google.cn/preview/behavior-changes-all

  • 《迁移指南》

    https://developer.android.google.cn/preview/migration.html

  • 隐私特性

    https://developer.android.google.cn/preview/privacy

  • 分区储存

    https://developer.android.google.cn/preview/privacy/scoped-storage

  • 新的位置权限

    https://developer.android.google.cn/preview/privacy/device-location

  • 后台 Activity 启动限制

    https://developer.android.google.cn/preview/privacy/background-activity-starts

  • 设备识别号限制

    https://developer.android.google.cn/preview/privacy/data-identifiers#device-ids

  • 隐私清单

    https://developer.android.google.cn/preview/privacy/checklist

  • 目标平台为 Q 的行为变更

    https://developer.android.google.cn/preview/behavior-changes-29



探索新特性及 API


一切准备就绪后,请您尽情探索 Android Q, 并了解可在应用中使用的新特性和 API。请阅读 API 变化报告,了解 Beta 2 引入了哪些变更,或阅读 Android Q Beta API 参考文档,获取更多细节内容。此外,我们还在 Android Q Beta 官网为您准备了许多学习资源,如版本说明以及报错指南,欢迎大家前往查看。


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


  • 新特性和 API

    https://developer.android.google.cn/preview/features

  • Android Q Beta API 参考文档

    https://developer.android.google.cn/reference/packages.html

  • Android Q Beta 官网

    https://developer.android.google.cn/preview/index.html

  • 版本说明

    https://developer.android.google.cn/preview/release-notes.html

  • 报错指南

    https://developer.android.google.cn/preview/feedback.html

  • 按照步骤

    https://developer.android.google.cn/preview/setup-sdk

  • Android Studio 3.5

    https://developer.android.google.cn/studio/preview/



如何获取 Android Q Beta 2


获取步骤十分简单: 如果您是 Pixel 用户,请点击加入 Android Beta 计划,并接收 Android Q Beta 2 下载推送 (今年,全线 Pixel 设备均在支持范围内,包括 Pixel 3, Pixel 2, 甚至初代 Pixel!)。如果您已加入计划,您无需进行任何操作,设备将很快收到更新通知。此外,系统镜像文件也已开放下载。如果您没有 Pixel 设备,请通过 Android Studio 中的 SDK Manager 下载最新的模拟器系统镜像文件。


您的反馈对我们十分宝贵,所以请向我们继续分享您的使用感受——反馈越及时,我们便能在更新平台的过程中整合更多的开发者需求。欢迎您在下方评论区或点击阅读原文给我们留言,分享您的想法、意见与建议。谢谢!


  • 加入 Android Beta 计划

    https://www.google.com/android/beta

  • 开放下载

    https://developer.android.google.cn/preview/download



点击屏末 | 阅读原文 | 提交产品反馈建议

推荐阅读


文章已于修改

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存