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 beneficiare della flessibilità ed efficienza di poter visualizzare determinati tipi di contenuti.

In questo modo puoi integrare facilmente i contenuti web esistenti nella tua app per Android, ad esempio per visualizzare un feed di notizie, mostrare tutorial interattivi, visualizzare annunci o persino ospitare un minigioco senza dover creare tutto da zero. Consideralo 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 alto grado di flessibilità nella personalizzazione o nell'aggiornamento dell'interfaccia utente.
  • Custom Tabs: un'esperienza di navigazione in-app completa basata sul browser predefinito dell'utente (vedi browser supportati) per quando gli utenti fanno clic su un link e vuoi che rimangano nell'app, anziché passare a 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 alla pagina web Android for Developers, evidenziata.
Figura 1. `WebView` (a sinistra) e `Scheda personalizzata` (a destra) evidenziate.

Perché incorporare contenuti web?

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

  • Efficienza: riutilizza il codice esistente del tuo sito web. Sfrutta le tecnologie e i contenuti web esistenti.
  • Integrazione: utilizza contenuti esterni di fornitori terzi, ad esempio media e annunci, all'interno della tua app.
  • Flessibilità: aggiorna i contenuti in modo dinamico senza essere vincolato a interfacce utente 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

  • Visualizza i tuoi contenuti web in linea come esperienza principale in cui vuoi un alto grado di flessibilità nella personalizzazione o nell'aggiornamento della UI.
  • Visualizzare altri contenuti come annunci, termini e normative legali o altri contenuti di terze parti in linea o come finestra all'interno dell'esperienza dell'app.
App per Android aperta su Google Play, con la visualizzazione web principale evidenziata in un
  riquadro rosso 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 che rimangano nell'app, anziché passare a un browser esterno.
    • Nota: per i dispositivi con schermi grandi, come tablet e pieghevoli, sono disponibili opzioni aggiuntive per aiutare le app a sfruttare lo spazio aggiuntivo:
    • Le app possono aprire i link web in modalità schermo diviso utilizzando Avvia un'esperienza multifinestra adiacente. In questo modo gli utenti possono svolgere più attività contemporaneamente tra la tua app e un browser. O
    • Custom Tabs hanno un'opzione per il riquadro laterale che può essere aperto 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 navigazione 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 in una casella rossa a sinistra e un browser in-app mostrato a destra.
Figura 3. Fare clic su un link in-app (a sinistra) e aprire un browser in-app (a destra).

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

L'approccio suggerito da Android è quello di creare i flussi di accesso o autenticazione utilizzando Credential Manager. Se ritieni di dover ancora utilizzare Embedded Web per queste esperienze, segui queste indicazioni:

  • Alcune app utilizzano WebView per fornire flussi di accesso per i propri utenti, incluso l'utilizzo di un nome utente e una passkey (o password) specifici per la tua app. Ciò consente agli sviluppatori di unificare i flussi di autenticazione su tutte le piattaforme.
  • Quando si rimanda a un provider di identità o a un'esperienza di accesso di terze parti, ad esempio "Accedi con…", Custom Tabs sono la soluzione ideale. L'avvio di un Custom Tab contribuisce 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 Autenticare gli utenti con WebView. Per lanciare una 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 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).