Ler em voz alta

O recurso de leitura do Google Assistente está disponível para dispositivos Android e oferece mais uma maneira para os usuários lerem conteúdos longos da Web, como artigos de notícias e postagens do blog. Os usuários podem dizer algo como "Ok Google, leia" para instalar um app leia conteúdo baseado na Web em voz alta, destaque as palavras lidas e role automaticamente. da página. Para saber mais sobre esse recurso, consulte também a postagem de atualização do recurso de leitura (em inglês).

Quando solicitado, o app lê o conteúdo da Web na tela em voz alta com
            a ajuda do Google Assistente.
Figura 1. Ouvindo um app ler conteúdo da Web em voz alta.

Apps Android com conteúdo baseado na Web podem oferecer suporte ao recurso de leitura, fornecendo informações ao Google Assistente com o método onProvideAssistContent().

Esse processo ajuda a manter a estrutura de dados que são compartilhados com o Assistente. Os usuários que receberem conteúdo compartilhado do app podem usar links diretos ou acessarem o conteúdo diretamente, em vez de texto ou uma captura de tela.

Implementar onProvideAssistContent() em qualquer conteúdo baseado na Web. e qualquer entity compartilhável no app.

Fornecer conteúdo ao Google Assistente

Para que o recurso de leitura acesse seu conteúdo, o app precisa fornecer ao Google Assistente informações sobre o conteúdo, como o URI da Web e alguns contextos básicos. O Google Assistente pode extrair o conteúdo a ser lido em voz alta para o usuário.

Para Apps Android que já implementam conteúdo baseado na Web usando WebViews ou nas guias personalizadas do Chrome, use os mesmos URIs da Web para o recurso "Ler" como um ponto de partida.

Ao combinar a função de leitura com intents integradas, você só precisa implementar onProvideAssistContent() para a atividade final do app no fluxo de tarefas do usuário depois de invocar Ações no app.

Por exemplo, se o app exibe artigos de notícias, implemente onProvideAssistContent() na tela final. mostrando a matéria; você não precisa implementá-lo para nenhum processo em andamento ou telas de prévia.

Forneça um URI da Web para seu conteúdo no campo uri de AssistContent. Forneça informações contextuais como um objeto JSON-LD usando o vocabulário do schema.org no campo structuredData (links em inglês).

O snippet de código abaixo mostra um exemplo de como fornecer conteúdo ao Google Assistente:

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

Ao implementar onProvideAssistContent(), forneça o máximo possível o máximo possível de dados sobre cada entity. Os campos abaixo são obrigatórios:

  • @type
  • .name
  • .url (obrigatório apenas se o conteúdo for endereçável por URL)

Para saber mais sobre como usar o onProvideAssistContent(), consulte o guia Como otimizar o conteúdo contextual para o Google Assistente na documentação para desenvolvedores Android.