Android consente agli sviluppatori di sfruttare la potenza del web all'interno della propria applicazione nativa, in modo da beneficiare della flessibilità ed efficienza della visualizzazione di determinati tipi di contenuti.
Incorporare contenuti utilizzando WebView
L'API WebView offre agli sviluppatori l'accesso alle funzionalità di un mini-browser per la visualizzazione di contenuti web all'interno dell'applicazione. In questo modo, puoi fornire esperienze basate sul web come parte principale o di supporto all'interno della tua applicazione, come mostrato nella Figura 1.


Cosa può fare WebView?
Ecco cosa puoi fare con WebView nella tua applicazione:
Incorpora web: una WebView è integrata nell'interfaccia utente di un'app come componente, proprio come un pulsante o un campo di testo.
Carica contenuti: WebView può caricare contenuti web da varie origini:
- URL remoti: può recuperare e visualizzare pagine web da internet, proprio come un browser normale.
- File locali: può caricare file HTML, CSS e JavaScript archiviati all'interno delle risorse dell'app.
- Contenuti generati dinamicamente: l'app può generare contenuti HTML al volo e inserirli in WebView.
Rendering: WebView utilizza il motore del browser per analizzare e visualizzare HTML, CSS e JavaScript, mostrando la pagina web risultante all'interno dell'area designata nell'interfaccia utente dell'app.
Esegui JavaScript: WebView può eseguire codice JavaScript nel contesto della pagina web caricata. Ciò consente interazioni e aggiornamenti dinamici all'interno di WebView.
Interazione con l'app nativa: è qui che WebView diventa più potente. Consente la comunicazione bidirezionale tra la pagina web e l'app.
- Da JavaScript a nativo: il codice JavaScript in esecuzione in WebView può chiamare le API host dell'app, consentendo l'accesso a funzionalità del dispositivo come fotocamera, GPS o sensori.
- Nativo di JavaScript: l'app può anche inserire codice JavaScript in WebView, manipolare i contenuti della pagina web o rispondere agli eventi attivati dalla pagina web.
In che modo WebView è diverso da un browser tipico come Chrome?
WebView è un componente altamente personalizzato che fornisce la funzionalità di base di una finestra sul web. A differenza di un browser, che fornisce gran parte della barra di navigazione e altre esigenze degli utenti per navigare sul web in modo più ampio, l'esperienza complessiva di WebView è modellata dal design e dallo scopo della tua app.
Per comprendere meglio la differenza tra WebView e i browser standard, consulta le spiegazioni riportate di seguito:
UI: WebView viene utilizzato per visualizzare i contenuti web e non ha un proprio intestazione o UI come la maggior parte degli altri browser comuni (pulsante Home, barra degli URL, navigazione, impostazioni e così via).
Funzionalità: molti browser hanno integrato funzionalità aggiuntive per migliorare l'esperienza di navigazione, come segnalibri, autorizzazioni o cronologia.
Aggiornamenti: poiché Android WebView è un servizio di sistema su Android, gli aggiornamenti vengono eseguiti 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.
Da dove iniziare?
Per informazioni su come utilizzare WebView nella tua app, consulta l'articolo Creare app web in WebView.
Risorse aggiuntive
Per sviluppare pagine web per dispositivi Android utilizzando oggetti WebView o schede personalizzate, consulta i seguenti documenti:
- Creare app web in WebView
- Gestire gli oggetti WebView
- Supportare schermi diversi nelle app web
- Eseguire il debug delle app web
- Best practice per le app web
- Attivare la versione beta di WebView
- Navigazione in-app utilizzando Embedded Web
- Panoramica delle schede personalizzate di Android