Utilizzare i contenuti web all'interno dell'app per Android

Android ti consente di sfruttare la potenza del web all'interno delle tue app. In questo modo, puoi sfruttare la flessibilità e l'efficienza di poter mostrare determinati tipi di contenuti.

In questo modo, puoi integrare perfettamente i contenuti web esistenti nella tua app per Android, ad esempio per mostrare un feed di notizie, tutorial interattivi, annunci display o persino ospitare un mini-gioco senza dover creare tutto da zero. Immaginala come una finestra su internet all'interno della tua app. Esistono due modi per incorporare contenuti web nella tua app:

  • WebView: mostra i contenuti web che controlli in linea dove vuoi un elevato grado di flessibilità nella personalizzazione o nell'aggiornamento della UI.
  • Custom Tabs: un'esperienza di navigazione in-app completa basata sul browser predefinito dell'utente (consulta il supporto del browser) per quando gli utenti fanno clic su un link e vuoi mantenerli nell'app, anziché uscire per un browser esterno, con gran parte dell'esperienza di navigazione pronta all'uso.
App per Android aperta su Google Play, con la visualizzazione web principale evidenziata. Scheda personalizzata aperta sulla pagina web Android for Developers, evidenziata.
Figura 1. `WebView` (a sinistra) e `Custom Tab` (a destra) evidenziati.

Perché incorporare contenuti web?

L'incorporamento di contenuti web nella tua app offre diversi vantaggi:

  • Efficienza: riutilizza il codice esistente del tuo sito web. Sfruttare le tecnologie e i contenuti web esistenti.
  • Integrazione: utilizza contenuti esterni di fornitori di terze parti, ad esempio contenuti multimediali e annunci, all'interno della tua app.
  • Flessibilità: aggiorna i contenuti in modo dinamico senza vincoli di UI predefinite o senza rilasciare aggiornamenti dell'app.

Quando utilizzare i contenuti web?

Esistono tre casi d'uso principali per l'utilizzo del web nella tua app per Android:

1. Incorporamento di contenuti web nell'app come contenuti principali o di supporto: utilizza WebView

  • Mostra i tuoi contenuti web in linea come esperienza principale se vuoi un elevato grado di flessibilità nella personalizzazione o nell'aggiornamento della UI.
  • Mostrare altri contenuti, come annunci, termini e normative legali o altri contenuti di terze parti, in linea o come finestra nell'esperienza con l'app.
App per Android aperta su Google Play, con la visualizzazione web principale evidenziata in una casella rossa App per Android aperta con testo di supporto all'interno di una casella rossa.
Figura 2. Contenuti web incorporati nell'app con `WebView`come contenuti principali (a sinistra) e di supporto (a destra).

2. Navigazione in-app utilizzando Custom Tabs o WebView per casi d'uso più avanzati

  • Offrire un'esperienza di navigazione in-app completa quando gli utenti fanno clic su un link e vuoi mantenerli nell'app, anziché indirizzarli a un browser esterno.
    • Nota: per i dispositivi con schermi di grandi dimensioni, come tablet e pieghevoli, sono disponibili opzioni aggiuntive per aiutare le app a sfruttare lo spazio aggiuntivo:
    • Le app possono aprire link web in modalità schermo diviso utilizzando l'avvio di un'esperienza multi-finestra adiacente. In questo modo, gli utenti possono eseguire il multitasking tra la tua app e un browser contemporaneamente. OPPURE
    • Custom Tabs hanno un'opzione di riquadro laterale che può aprirsi nella stessa attività, ma accanto ai contenuti dell'app esistenti.
  • Custom Tab è basato sul browser predefinito dell'utente, per i browser che supportano Custom Tabs.
    • Sebbene sia possibile utilizzare un WebView e fornire un'esperienza di browser in-app altamente personalizzabile, consigliamo Custom Tabs per un'esperienza di navigazione pronta all'uso e una transizione fluida quando un utente vuole aprire un link web nel browser.
Pagina web con link in-app nel riquadro rosso a sinistra e un browser in-app mostrato a destra.
Figura 3. Clic su un link in-app (a sinistra) e apertura di un browser in-app (a destra).

3. Flussi di accesso o autenticazione all'interno dell'app

L'approccio suggerito da Android è creare i flussi di accesso o autenticazione utilizzando Gestore delle credenziali. Se ritieni di dover comunque utilizzare il web incorporato per queste esperienze, segui queste indicazioni:

  • Alcune app utilizzano i WebView per fornire flussi di accesso ai propri utenti, incluso l'utilizzo di un nome utente e di una passkey (o password) specifici per la tua app. In questo modo, gli sviluppatori possono unificare i flussi di autenticazione tra le piattaforme.
  • Quando si esegue il collegamento a un provider di identità o a un'esperienza di accesso di terze parti, ad esempio "Accedi con…", Custom Tabs è la soluzione ideale. L'avvio di una Custom Tab aiuta a proteggere le credenziali dell'utente mantenendole isolate nel sito di terze parti.

Per saperne di più sull'utilizzo di WebView per l'autenticazione, consulta Autentica gli utenti con WebView. Per lanciare un Custom Tab, consulta la Panoramica delle schede personalizzate di Android.

Campo di accesso in-app con WebView a sinistra. Un accesso di terze parti con una scheda personalizzata a destra.
Figura 4. Un campo di accesso in-app (a sinistra) e un accesso di terze parti aperto in una "scheda personalizzata" (a destra).