适用于 Android 的 Google 助理

Google 助理支持通过语音控制 Android 应用。使用助理,用户可以通过语音说出诸如“嘿 Google,在示例应用中开始跑步”之类的指令来启动应用、执行任务、访问内容等。

作为 Android 开发者,您可以使用助理的开发框架和测试工具轻松地在 Android 设备(如移动设备、汽车和可穿戴设备)上实现对应用的深度语音控制。

应用操作

助理的应用操作允许用户使用语音启动和控制 Android 应用。





应用操作支持更深入的语音控制,使用户能够启动您的应用并执行以下任务

  • 从助理启动功能:将您的应用功能连接到与预定义语义模式或内置意图匹配的用户查询。
  • 在 Google 表面上显示应用信息:提供 Android 窗口小部件 供助理显示,在不更改上下文的情况下为用户提供内联答案、简单确认和简短交互。
  • 从助理建议语音快捷方式:使用助理根据用户的上下文主动建议任务,以便用户发现或重播。

应用操作使用 内置意图 (BII) 在流行的任务类别中支持这些用例以及数十种其他用例。有关在应用中支持 BII 的详细信息,请参阅此页面上的 应用操作 概述。

多设备开发

您可以使用应用操作在移动设备以外的设备表面上提供语音控制。例如,使用针对自动驾驶用例优化的 BII,驾驶员可以使用语音执行以下任务

应用操作概述

您可以使用应用操作通过允许用户使用语音在您的应用中执行特定任务来为用户提供更深入的应用语音控制。如果用户已安装您的应用,他们只需使用包含您的应用名称的短语来陈述其意图,例如“嘿 Google,在示例应用中开始锻炼”。应用操作支持模拟用户想要完成的任务或他们正在寻找的信息的常用表达方式的 BII,例如

  • 开始锻炼、发送消息和其他类别特定的操作。
  • 打开应用的功能。
  • 使用应用内搜索查询产品或内容。

借助应用操作,助理可以根据用户的上下文主动向用户建议您的语音功能作为快捷方式。此功能使用户能够轻松发现和重播您的应用操作。您也可以使用应用操作 应用内推广 SDK 在您的应用中建议这些快捷方式。

通过在 shortcuts.xml 中声明 <capability> 标记来启用对应用操作的支持。功能告诉 Google 如何使用 BII 以语义方式访问您的应用内功能,并为您的功能启用语音支持。助理通过将您的应用启动到指定的内容或操作来完成用户意图。对于某些用例,您可以在助理中指定一个 Android 窗口小部件以显示以完成用户查询。

应用操作在 Android 5(API 级别 21)及更高版本上受支持。用户只能在 Android 手机上访问应用操作。Android Go 上的助理不支持应用操作。

应用操作的工作原理

应用操作将您的应用内功能扩展到助理,使用户能够通过语音访问您的应用功能。当用户调用应用操作时,助理会将查询与 shortcuts.xml 资源中声明的 BII 匹配,从而在请求的屏幕上启动您的应用或显示 Android 窗口小部件。

您使用 Android 功能元素 在您的应用中声明 BII。当您使用 Google Play 控制台 上传您的应用时,Google 会注册您应用中声明的功能,并使其可供用户从助理访问。

例如,您可能会为在您的应用中开始锻炼提供功能。当用户说“嘿 Google,在示例应用中开始跑步”时,会发生以下步骤

  • 助理对查询执行自然语言分析,将请求的语义与 BII 的预定义模式匹配。在这种情况下,actions.intent.START_EXERCISE BII 与查询匹配。
  • 助理会检查 BII 是否之前已为您的应用注册,并使用该配置来确定如何启动它。
  • 助理会生成一个 Android 意图以启动请求的应用内目标,使用您在 <capability> 中提供的信息。助理会提取查询的参数,并将它们作为额外内容传递到生成的 Android 意图中。
  • 助手通过启动生成的 Android 意图来满足用户请求。您可以配置intent以在您的应用中启动屏幕或在助手内显示小部件。
When a user provides a query to Google Assistant, Assistant responds
            by launching an app destination for the user.
图 1. 应用操作用户查询流程示例。

用户完成任务后,您可以使用Google 快捷方式集成库将操作及其参数的动态快捷方式推送到 Google,使助手能够在上下文相关的时机向用户建议该快捷方式。

使用此库可使您的快捷方式有资格在 Google 表面(如助手)上被发现和重播。例如,您可以为用户在您的拼车应用中请求的每个目的地推送到 Google 的快捷方式,以便稍后作为快捷方式建议快速重播。

构建应用操作

应用操作建立在您 Android 应用中现有功能的基础之上。您实现的每个应用操作的过程都类似。应用操作使用您在shortcuts.xml中指定的capability元素将用户直接带到应用中的特定内容或功能。

构建应用操作时,第一步是确定您希望允许用户从助手访问的活动。然后,使用这些信息,从应用操作内置意图参考中找到最匹配的内置意图。

内置意图模拟了用户使用应用表达想要执行的任务或他们寻求的信息的一些常用方式。例如,内置意图存在于启动锻炼、发送消息和在应用中搜索等操作中。内置意图是开始使用应用操作的最佳方法,因为它们模拟了多种语言中用户查询的常见变体,使您能够轻松地快速启用应用的语音功能。

确定要实现的应用内功能和内置意图后,您需要添加或更新 Android 应用中的shortcuts.xml资源文件,该文件将内置意图映射到您的应用功能。在shortcuts.xml中定义为capability元素的应用操作描述了每个内置意图如何解析其执行,以及哪些参数被提取并提供给您的应用。

开发应用操作的一个重要部分是将内置意图参数映射到您定义的执行中。此过程通常采用将应用内功能的预期输入映射到内置意图的语义参数的形式。

测试应用操作

在开发和测试期间,您可以使用Android Studio 的Google 助手插件在您的 Google 帐户的助手中创建应用操作的预览。此插件可帮助您测试您的应用操作在提交部署之前如何处理各种参数。在测试工具中生成应用操作的预览后,您可以直接从测试工具窗口触发测试设备上的应用操作。

媒体应用

助手还提供内置功能来理解媒体应用命令,例如“嘿 Google,播放碧昂斯的歌曲”,并支持媒体控制,例如暂停、跳过、快进和点赞。

后续步骤

按照应用操作路径使用我们的示例 Android 应用构建应用操作。然后,继续我们的指南,了解如何为您的应用构建应用操作。您还可以探索这些其他资源来构建应用操作