Android 7.1 开发者版本

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

应用快捷方式

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

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

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

在应用添加快捷方式后,这些快捷方式会出现在任何支持快捷方式的启动器上,例如 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 开发者博客

圆形图标资源

显示图片资源工具的屏幕

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

应用现在可以定义圆形启动器图标,这些图标用在支持这些图标的设备上。当启动器请求应用图标时,框架会返回 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