Android 7.1 开发者版本

Android 7.1 更新为用户和开发者引入了各种新功能。本文重点介绍面向开发者的新功能。

应用快捷方式

您可以使用新的快捷方式功能,让用户从启动器直接进入应用中的关键操作。用户只需长按应用的启动器图标即可显示应用的快捷方式,然后点按快捷方式即可跳转到关联的操作。这些快捷方式是吸引用户的绝佳方式,可让您在用户启动应用之前展示应用的功能。

每个快捷方式都会引用一个 intent,每个 intent 都会启动特定操作或任务,并且您可以为任何可表示为 intent 的操作创建快捷方式。例如,您可以创建用于发送新短信、进行预订、播放视频、继续游戏、加载地图位置等的 intent。

您可以通过将快捷方式添加到 APK 中的资源文件来静态创建应用快捷方式,也可以在运行时动态添加快捷方式。静态快捷方式非常适合常用操作,而动态快捷方式可让您根据用户的偏好设置、行为、位置等突出显示操作。您可以在每个应用中提供最多 5 个快捷方式。不过,请注意,某些启动器应用不会显示您为应用注册的所有快捷方式。

您的应用添加快捷方式后,这些快捷方式将在支持它们的任何启动器上可用,例如 Pixel 启动器(Pixel 设备上的默认启动器)、Now 启动器(Nexus 设备上的默认启动器)以及提供支持的其他启动器。

任何应用都可以创建快捷方式,任何启动器应用都可以添加对快捷方式的支持。Android 7.1 提供了一个 API,供应用注册快捷方式,并供启动器读取已注册的快捷方式。如需了解详情,请参阅应用快捷方式开发者文档

Nexus 6P 上的图像键盘支持

图片键盘支持:让用户能够直接通过键盘输入图片和其他内容。

Nexus 6P 上的应用快捷方式

应用快捷方式:即时呈现关键操作并让用户深入了解您的应用。

图片键盘支持

用户通常希望使用表情符号、贴纸和其他类型的富媒体内容进行通信。在之前的 Android 版本中,软键盘(也称为输入法或 IME)只能向应用发送 Unicode 表情符号。对于富媒体内容,应用必须构建不能在其他应用中使用的应用专用表情符号,或者使用通过轻松分享操作或剪贴板发送图片等解决方法。

现在,在 Android 7.1 中,Android SDK 包含 Commit Content API,它提供了一种通用方式,使 IME 可以将图片和其他富媒体内容直接发送到应用中的文本编辑器。从版本 25.0.0 开始,v13 支持库中也提供此 API。

借助此 API,您可以构建可接受来自任意键盘的富媒体内容的即时通讯应用,以及可向任何应用发送富媒体内容的键盘。如需了解详情,请参阅图片键盘支持开发者文档

新增了专业表情符号

在 Android 7.1 中,我们添加了新的表情符号,以代表更多女性和男性职业。新表情符号在外观上与现有的男性表情符号和女性表情符号保持一致,并且有各种肤色可选。

如果您是键盘或即时通讯应用开发者,则应开始将这些表情符号纳入您的应用。您可以通过调用 Paint.hasGlyph() 动态检查是否有新的表情符号字符。

一系列采用各种肤色的全新职业女性表情符号

增强型动态壁纸元数据

现在,您可以向显示壁纸预览的任何组件(例如壁纸选择器应用)提供有关动态壁纸的元数据。您可以显示标签、说明和作者等现有元数据属性,以及上下文网址和标题的新属性,以便将用户链接到有关壁纸的更多信息。

如需了解详情,请参阅 Android 开发者博客

圆形图标资源

显示图片素材资源工具的界面

您可以使用 Image Asset 工具快速创建圆形图标资源。

现在,应用可以定义圆形启动器图标,以便在支持此类图标的设备上使用。当启动器请求应用图标时,框架会返回 android:iconandroid:roundIcon,具体取决于设备 build 配置。因此,应用在响应启动器 intent 时应务必同时定义 android:iconandroid:roundIcon 资源。您可以使用 Image Asset Studio 设计圆形图标。

您应务必在支持新圆形图标的设备上测试应用,以查看圆形应用图标的外观和显示方式。测试资源的一种方法是运行 Android 模拟器,并使用以 API 级别 25 为目标平台的 Google API 模拟器系统。您还可以在 Google Pixel 设备上安装应用,以测试图标。

如需详细了解如何设计应用启动器图标,请参阅 Material Design 指南

存储空间管理器 intent

应用现在可以触发 ACTION_MANAGE_STORAGE intent,将用户引导至系统的释放空间屏幕。例如,如果应用所需的空间超出了当前可用空间,则可以使用此 intent 让用户删除不需要的应用和内容,以释放足够的空间。

改进了 VR 线程调度

Android 7.1 提供了一些新功能来改进 VR 线程调度。这很有用,因为虚拟现实应用对延迟非常敏感。

应用现在可以将一个线程指定为 VR 线程。当应用处于 VR 模式时,系统会更积极地调度该线程,以最大限度地缩短延迟时间。一个进程一次只能有一个 VR 线程,并且系统可能会限制该线程的运行时长。当应用未处于 VR 模式时,此设置无效。

如需将线程指定为 VR 线程,请调用新的 ActivityManager.setVrThread() 方法。

演示用户提示

现在,应用可以检查设备是否以演示版用户身份运行。

应用可以调用新的 UserManager.isDemoUser() 方法,以查看应用是否在演示版用户沙盒中运行。这样一来,应用就可以根据潜在客户量身定制启动体验。例如,以演示版用户身份运行时,应用可能会为用户提供更多帮助,或更详细地说明其功能。

适用于运营商和通话应用的 API

该系统现在为运营商和电话应用提供了新的电话功能,包括:

  • 多端点通话
  • CDMA 语音隐私属性
  • 对可视化语音信箱的来源类型支持
  • 用于管理视频通话的运营商配置选项

适用于 Wear 设备的新屏幕密度

Android 现在支持 Wear 设备的多种新屏幕密度,这些密度更贴近某些设备的物理规格。这样,您就可以根据需要,针对 Wear 应用中显示的屏幕对图形进行微调。

新的设备密度如下:

  • DENSITY_260
  • DENSITY_300
  • DENSITY_340