Leggimi questo

Leggi è una funzionalità dell'Assistente Google disponibile sui dispositivi Android che offre un altro modo per consentire agli utenti di leggere contenuti web nel formato lungo come articoli di notizie e post di blog. Gli utenti possono dire, ad esempio, "Hey Google, leggilo" per avere un'app leggere ad alta voce i contenuti basati sul web, evidenziare le parole che vengono lette e scorrere automaticamente della pagina. Per saperne di più su questa funzionalità, puoi anche leggere Leggi il post di aggiornamento del prodotto.

Quando richiesto, un'app legge ad alta voce i contenuti web sullo schermo usando
            grazie all'aiuto dell'Assistente Google.
Figura 1. Ascoltare un'app che legge i contenuti web ad alta voce.

Le app per Android con contenuti basati sul web possono supportare Read It fornendo informazioni all'assistente utilizzando il metodo onProvideAssistContent().

Questo processo consente di mantenere la struttura dei dati così come vengono condivisi Assistente Google. Gli utenti che ricevono contenuti dell'app condivisi possono quindi essere collegati tramite link diretti ricevere i contenuti direttamente, invece che sotto forma di testo o screenshot.

Implementa onProvideAssistContent() per tutti i contenuti basati sul web e qualsiasi entity condivisibile nella tua app.

Fornisci contenuti all'assistente

Affinché la funzionalità Leggi possa accedere ai tuoi contenuti, la tua app deve fornire all'assistente informazioni sui contenuti, come l'URI web e alcuni contesti di base. L'assistente può quindi recuperare i tuoi contenuti da leggere ad alta voce all'utente.

Per App per Android che implementano già contenuti basati sul web utilizzando WebView o per le schede personalizzate di Chrome, utilizza gli stessi URI web per la lettura punto di partenza.

Quando combini la funzionalità Read It con gli intent integrati, è sufficiente implementare onProvideAssistContent() per l'attività finale dell'app nella flusso di attività dopo aver richiamato l'Azione app.

Ad esempio, se la tua app mostra articoli, implementa onProvideAssistContent() nella schermata finale che mostra l'articolo; non occorre implementarlo per i modelli schermate di anteprima.

Fornisci un URI web per i tuoi contenuti nel campo uri di AssistContent. Fornisci informazioni contestuali come oggetto JSON-LD usando il vocabolario di schema.org nella structuredData.

Il seguente snippet di codice mostra un esempio di come fornire contenuti all'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);
}

Quando implementi onProvideAssistContent(), fornisci il massimo il maggior numero possibile di dati su ogni entity. Le seguenti i campi sono obbligatori:

  • @type
  • .name
  • .url (obbligatorio solo se i contenuti sono indirizzi URL)

Per scoprire di più sull'utilizzo di onProvideAssistContent(), consulta le Guida all'ottimizzazione dei contenuti contestuali per l'assistente in la documentazione per gli sviluppatori Android.