Incorporare contenuti web nella tua app come contenuti principali o di supporto

Android ti consente di sfruttare la potenza del web all'interno della tua app, in modo da poter usufruire della flessibilità e dell'efficienza della visualizzazione di determinati tipi di contenuti.

Incorporare contenuti utilizzando WebView

L'WebView API ti consente di accedere alle funzionalità di un mini-browser per visualizzare i contenuti web all'interno della tua app. In questo modo, puoi fornire esperienze basate sul web come parte principale o di supporto all'interno della tua app, come mostrato nella Figura 1.

App per Android aperta su Google Play, con la visualizzazione web principale evidenziata in un riquadro rosso Apertura app Android con testo di supporto all'interno di una casella rossa.
Figura 1. Contenuti web incorporati nell'app con oggetti `WebView` come contenuti principali (a sinistra) e di supporto (a destra).

Cosa può fare WebView

Puoi eseguire le seguenti operazioni con WebView nella tua app:

  • Incorporare il web: un oggetto WebView è integrato nell'interfaccia utente di un'app come componente, in modo simile a un pulsante o a un campo di testo.

  • Caricare contenuti: WebView può caricare contenuti web da varie fonti:

    • URL remoti: può recuperare e visualizzare pagine web da internet, proprio come un normale browser.
    • File locali: può caricare file HTML, CSS e JavaScript archiviati nelle risorse dell'app.
    • Contenuti generati dinamicamente: l'app può generare contenuti HTML in modo dinamico e fornirli all'oggetto WebView.
  • Eseguire il rendering: WebView utilizza il motore del browser per analizzare ed eseguire il rendering di HTML, CSS e JavaScript, visualizzando la pagina web risultante nell'area designata nell'UI dell'app.

  • Eseguire JavaScript: WebView può eseguire codice JavaScript nel contesto della pagina web caricata. Ciò consente interazioni e aggiornamenti dinamici all'interno di WebView.

  • Interagire con la tua app: è qui che WebView diventa più potente. Consente la comunicazione bidirezionale tra la pagina web e l'app.

    • Codice JavaScript per il codice dell'app: il codice JavaScript in esecuzione in un oggetto WebView può chiamare le API host dell'app, consentendo l'accesso alle funzionalità del dispositivo come fotocamera, GPS, o sensori.

    • Codice dell'app per JavaScript: l'app può anche inserire codice JavaScript in un oggetto WebView, manipolare i contenuti della pagina web o rispondere agli eventi attivati dalla pagina web.

Differenze tra WebView e un browser

Un oggetto WebView è un componente altamente personalizzato che fornisce la funzionalità di base di una finestra sul web. A differenza di un browser, che fornisce una barra di navigazione e altri elementi dell'interfaccia utente per navigare sul web in modo più ampio, l'esperienza complessiva di un oggetto WebView è determinata dalla progettazione e dallo scopo dell'app.

Per comprendere meglio le differenze tra WebView e i browser standard, consulta le seguenti spiegazioni:

UI: un oggetto WebView viene utilizzato per visualizzare i contenuti web e non ha una sua intestazione o UI come la maggior parte degli altri browser comuni, ad esempio un pulsante Home, una barra degli indirizzi o un menu delle impostazioni.

Funzionalità: molti browser hanno funzionalità integrate per migliorare l' esperienza di navigazione, come segnalibri, autorizzazioni o cronologia.

Aggiornamenti: poiché Android WebView è un servizio di sistema su Android, gli aggiornamenti vengono inviati e integrati automaticamente nelle app su base mensile. I browser si basano sugli aggiornamenti delle app corrispondenti e poi sugli utenti finali per applicare l'aggiornamento sui propri dispositivi.

Inizia

Per informazioni su come utilizzare WebView nella tua app, consulta il documento Creare app web in WebView.

Risorse aggiuntive

Per sviluppare pagine web per dispositivi con tecnologia Android utilizzando oggetti WebView o schede personalizzate, consulta i seguenti documenti: