「朗讀」是 Google 助理功能,適用於搭載下列產品的 Android 裝置: 讀者能以另一種方式閱讀長篇網路內容 網誌文章。使用者只要說「Ok Google,朗讀內容」這類指令,就能取得應用程式 朗讀網路內容、醒目顯示正在朗讀的字詞,以及自動捲動 該網頁。如要進一步瞭解這項功能,您也可以參閱 閱讀這項產品的產品更新文章。
![系統提示時,應用程式會透過以下提示朗讀畫面上的網頁內容:
會藉助 Google 助理](https://developer.android.com/static/guide/app-actions/images/read-it-blog-post.gif?authuser=1&hl=zh-tw)
含有網路內容的 Android 應用程式可提供資訊來支援 Read It 功能
使用 onProvideAssistContent()
方法連線至 Google 助理。
這個程序有助於維護資料結構,因為資料會與 「Google 助理」。然後將收到分享應用程式內容的使用者設為深層連結,或是 接收內容,而不是以文字或螢幕截圖的形式接收資料。
針對任何網路內容實作 onProvideAssistContent()
和應用程式中任何可分享的 entity
。
提供內容給 Google 助理
如要讓「朗讀」功能存取內容,應用程式必須提供 Google 助理 例如網路 URI 和一些基本背景資訊。 然後 Google 助理可擷取你的內容,以便大聲朗讀。
適用對象 已使用 WebView 導入網路內容的 Android 應用程式; Chrome 自訂分頁 起點
將 Read It 功能與內建意圖結合時,您只需要
為使用者的最終應用程式活動實作 onProvideAssistContent()
啟動應用程式動作後的工作流程
舉例來說,如果您的應用程式在
新聞報導,在最後一個畫面中實作 onProvideAssistContent()
顯示文章;您不需要在任何
預覽畫面
在 AssistContent
的 uri
欄位中,為您的內容提供網路 URI。
以 JSON-LD 物件提供背景資訊
描述 schema.org 詞彙
structuredData
欄位中。
以下程式碼片段為向 Google 助理提供內容的範例:
Kotlin
override fun onProvideAssistContent(outContent: AssistContent) { super.onProvideAssistContent(outContent) // Set the web URI for content to be read from a // WebView, Chrome Custom Tab, or other source val urlString = url.toString() outContent.setWebUri(Uri.parse(urlString)) // Create JSON-LD object based on schema.org structured data val structuredData = JSONObject() .put("@type", "Article") .put("name", "ExampleName of blog post") .put("url", outContent.getWebUri()) .toString() outContent.setStructuredData(structuredData) }
Java
@Override public void onProvideAssistContent(AssistContent outContent) { // Set the web URI for content to be read from a // WebView, Chrome Custom Tab, or other source String urlString = url.toString(); outContent.setWebUri(Uri.parse(urlString)); try { // Create JSON-LD object based on schema.org structured data String structuredData = new JSONObject() .put("@type", "Article") .put("name", "ExampleName of blog post") .put("url", outContent.getWebUri()) .toString(); outContent.setStructuredData(structuredData); } catch (JSONException ex) { // Handle exception Log.e(TAG, ex.getMessage()); } super.onProvideAssistContent(outContent); }
實作 onProvideAssistContent()
時,請盡可能提供
並盡可能提供每個 entity
的相關資料。下列
必填欄位:
@type
.name
.url
(只有在內容是可藉由網址存取時才是必填資訊)
如要進一步瞭解如何使用 onProvideAssistContent()
,請參閱
「為 Google 助理最佳化背景內容」指南,請參閱:
請參閱 Android 開發人員說明文件