使用 Android 手机的用户可以通过语音命令(例如“嘿 Google,发送给 Jane”)要求 Google 助理与其他用户共享应用内容。根据第一个用户的系统选项,助理随后可以在共享内容中包含屏幕上的文本或设备屏幕截图。
这种共享方法通常足够,但从您的应用共享内容的用户可能不会重新进入应用以查看内容。您可以通过实现 onProvideAssistContent()
方法为助理提供有关当前前台内容的结构化信息。
此过程有助于在共享到其他用户时维护数据的结构。接收共享应用内容的用户随后可以进行深度链接或直接接收内容,而不是作为文本或屏幕截图。
为应用中任何可共享的 实体
实现 onProvideAssistContent()
。
向助理提供内容
您只需要在用户在调用应用操作后任务流中的最终应用活动中实现 onProvideAssistContent()
。例如,在 GET_ITEM_LIST
流中,在显示项目列表的最终屏幕中实现该方法;您无需为任何正在进行的或预览屏幕实现它。
以 JSON-LD 对象的形式提供上下文信息 使用 schema.org 词汇 在 AssistContent
的 structuredData
字段中。以下代码片段显示了记录上下文内容的示例
override fun onProvideAssistContent(outContent: AssistContent) { super.onProvideAssistContent(outContent) // JSON-LD object based on Schema.org structured data outContent.structuredData = JSONObject() .put("@type", "ItemList") .put("name", "My Work items") .put("url", "https://my-notes-and-lists.com/lists/12345a") .toString() }
@Override public void onProvideAssistContent(AssistContent outContent) { super.onProvideAssistContent(outContent); // JSON-LD object based on Schema.org structured data outContent.structuredData = new JSONObject() .put("@type", "ItemList") .put("name", "My Work items") .put("url", "https://my-notes-and-lists.com/lists/12345a") .toString(); }
为每个 实体
提供尽可能多的数据。以下字段是必需的
@type
.name
.url
(仅当内容可通过 URL 寻址时才需要)
要了解有关使用 onProvideAssistContent()
的更多信息,请参阅 优化助理的上下文内容 指南。