Android 手機使用者可以透過語音指令,要求 Google 助理分享應用程式內容給其他使用者,例如「Ok Google,把這個傳送給小珍」。根據第一位使用者的系統選項,Google 助理可以在分享內容當中加入螢幕上的文字或裝置螢幕截圖。
一般來說,這種分享方式就已經足夠,但收到您應用程式分享內容的使用者可能不會重新進入應用程式查看內容。您可以實作 onProvideAssistContent()
方法,為 Google 助理提供目前前景內容的結構化資訊。
透過這項程序,可以在分享資料給其他使用者時維持資料的結構。如此一來,當使用者收到分享的應用程式內容時,就能使用深層連結或直接收到內容,而不是以文字或螢幕截圖的形式接收資料。
建議您為應用程式中任何可分享的 entity
實作 onProvideAssistContent()
。
提供內容給 Google 助理
您只需要在叫用應用程式動作後的使用者工作流程中,為最後的應用程式活動實作 onProvideAssistContent()
。例如,在
GET_ITEM_LIST
流程,請在最後一個畫面中實作該方法
顯示項目清單您不需要在任何
預覽畫面
在 AssistContent
的 structuredData
欄位中,使用 schema.org 詞彙以 JSON-LD 物件的形式提供背景資訊。以下程式碼片段為記錄背景內容的範例:
override fun onProvideAssistContent(outContent: AssistContent) { super.onProvideAssistContent(outContent) // JSON-LD object based on Schema.org structured data outContent.structuredData = JSONObject() .put("@type", "MenuItem") .put("name", "Blueberry Crisp Iced Signature Latte") .put("url", "https://mysite.com/menuitems/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", "MenuItem") .put("name", "Blueberry Crisp Iced Signature Latte") .put("url", "https://mysite.com/menuitems/12345a") .toString(); }
請盡可能為每個 entity
提供最多相關資料。以下為必填欄位:
@type
.name
.url
(只有在內容是可藉由網址存取時才是必填資訊)
如要進一步瞭解如何使用 onProvideAssistContent()
,請參閱「為 Google 助理最佳化背景內容」指南。