Vorlesen

„Lesen“ ist eine Google Assistant-Funktion auf Android-Geräten, die Nutzern eine weitere Möglichkeit bietet, lange Webinhalte wie Nachrichtenartikel und Blogposts zu lesen. Nutzer können beispielsweise „Hey Google, lies es“ sagen, damit eine App webbasierte Inhalte vorliest, die vorgelesenen Wörter hervorhebt und automatisch auf der Seite scrollt. Weitere Informationen zu dieser Funktion finden Sie auch im Beitrag zum Produktupdate „Read It“.

Wenn Sie dazu aufgefordert werden, liest eine App Webinhalte auf dem Bildschirm mithilfe von Google Assistant vor.
Abbildung 1: Sie hören einer App zu, wie sie Webinhalte vorgelesen bekommen.

Android-Apps mit webbasierten Inhalten können die Funktion „Read It“ unterstützen, indem sie Assistant mithilfe der Methode onProvideAssistContent() Informationen bereitstellen.

Dieser Prozess trägt dazu bei, die Struktur der Daten beizubehalten, während sie für Assistant freigegeben werden. Nutzer, die geteilte App-Inhalte erhalten, können dann per Deeplink verknüpft werden oder Inhalte direkt anstelle von Text oder Screenshots erhalten.

Implementieren Sie onProvideAssistContent() für alle webbasierten Inhalte und alle teilbaren entity in Ihrer App.

Assistant Inhalte zur Verfügung stellen

Damit die Funktion „Lesen“ auf deine Inhalte zugreifen kann, muss deine App Assistant Informationen über die Inhalte zur Verfügung stellen, z. B. die Web-URI und einen grundlegenden Kontext. Assistant kann dann deine Inhalte abrufen und dem Nutzer vorlesen.

Verwende für Android-Apps, in denen bereits webbasierte Inhalte mithilfe von WebViews oder benutzerdefinierten Chrome-Tabs implementiert wurden, dieselben Web-URIs für die Funktion „Lesen“ als Ausgangspunkt.

Wenn Sie die Read It-Funktion mit integrierten Intents kombinieren, müssen Sie onProvideAssistContent() nur für die endgültige App-Aktivität im Aufgabenfluss des Nutzers nach dem Aufruf der App-Aktion implementieren.

Wenn in Ihrer App beispielsweise Nachrichtenartikel angezeigt werden, implementieren Sie onProvideAssistContent() im letzten Bildschirm, in dem der Artikel angezeigt wird. Für laufende oder Vorschaubildschirme ist dies nicht erforderlich.

Geben Sie im Feld uri von AssistContent einen Web-URI für Ihren Inhalt ein. Stelle Kontextinformationen als JSON-LD-Objekt mithilfe von Schema.org-Vokabular im Feld structuredData bereit.

Das folgende Code-Snippet zeigt ein Beispiel für die Bereitstellung von Inhalten für Assistant:

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);
}

Geben Sie bei der Implementierung von onProvideAssistContent() so viele Daten wie möglich zu jedem entity an. Die folgenden Felder sind Pflichtfelder:

  • @type
  • .name
  • .url (nur erforderlich, wenn der Inhalt URL-adressierbar ist)

Weitere Informationen zur Verwendung von onProvideAssistContent() findest du im Leitfaden Kontextinhalte für Assistant optimieren in der Android-Entwicklerdokumentation.