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.](https://developer.android.com/static/guide/app-actions/images/read-it-blog-post.gif?authuser=0&hl=it)
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.