Przeczytaj

Czytaj To funkcja Asystenta Google dostępna na urządzeniach z Androidem, która umożliwia To kolejny sposób na czytanie długich treści internetowych, takich jak artykuły postów na blogach. Aby dodać aplikację, użytkownicy mogą powiedzieć na przykład „OK Google, przeczytaj” czytania na głos treści internetowych, podświetlania czytanych słów i automatycznego przewijania. stronę. Aby dowiedzieć się więcej o tej funkcji, przeczytaj też Przeczytaj post na temat aktualizacji usług.

Gdy pojawi się odpowiedni komunikat, aplikacja odczytuje na głos treści internetowe na ekranie, używając
            z pomocą Asystenta Google.
Rysunek 1. Słuchanie aplikacji czyta na głos treści z internetu.

Aplikacje na Androida z zawartością internetową mogą obsługiwać funkcję Przeczytaj, do Asystenta za pomocą metody onProvideAssistContent().

Ten proces pomaga zachować strukturę danych, które są udostępniane Asystent. Użytkownicy, którzy otrzymują udostępnioną treść aplikacji, mogą mieć precyzyjne linki, i otrzymywać treści bezpośrednio, a nie w formie tekstu czy zrzutu ekranu.

Implementacja onProvideAssistContent() w przypadku wszystkich treści internetowych i udostępniane w Twojej aplikacji entity.

Przekazuj treści Asystentowi

Aby funkcja Czytaj to mogła uzyskać dostęp do Twoich treści, aplikacja musi udostępniać Asystentowi informacje o treści, takie jak identyfikator URI witryny i podstawowy kontekst. Asystent może pobierać Twoje treści, aby użytkownik mógł je przeczytać na głos.

Dla: w aplikacjach na Androida, które implementują już treści internetowe za pomocą komponentów WebView lub na kartach niestandardowych Chrome użyj tych samych identyfikatorów URI w przypadku funkcji Odczytaj jako i punktu początkowego.

Łącząc funkcję Przeczytaj ją z wbudowanymi intencjami, wystarczy zaimplementować onProvideAssistContent() na potrzeby ostatniej aktywności w aplikacji w w procesie wykonywania zadań po wywołaniu akcji w aplikacji.

Jeśli na przykład aplikacja wyświetla się artykuły z wiadomościami, wprowadź onProvideAssistContent() na ostatnim ekranie wyświetlenie artykułu; nie trzeba go wdrażać w przypadku żadnych ekranów podglądu.

Podaj identyfikator URI treści w polu uri AssistContent. Podaj informacje kontekstowe w formie obiektu JSON-LD używając słownika schema.org, structuredData.

Ten fragment kodu pokazuje przykład przesyłania treści do Asystenta:

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

Implementując onProvideAssistContent(), podaj jak najwięcej jak najwięcej danych o każdym z nich (entity). Poniżej wymagane pola:

  • @type
  • .name
  • .url (wymagany tylko wtedy, gdy treść można zaadresować URL)

Aby dowiedzieć się więcej o korzystaniu z onProvideAssistContent(), zobacz Przewodnik po optymalizowaniu treści kontekstowych dla Asystenta w w dokumentacji dla deweloperów aplikacji na Androida.