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

Android consente agli sviluppatori di sfruttare la potenza del web all'interno delle proprie app, in modo da poter beneficiare della flessibilità ed efficienza della visualizzazione di determinati tipi di contenuti.

In questo modo puoi integrare facilmente i contenuti web esistenti nella tua applicazione Android nativa, 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 elevato grado di flessibilità nella personalizzazione o nell'aggiornamento della UI.
  • Schede personalizzate: Un'esperienza di navigazione completa in-app basata sul browser predefinito dell'utente (vedi il supporto del browser) quando gli utenti fanno clic su un link e vuoi che rimangano nell'app, invece di passare a un browser esterno, con gran parte dell'esperienza di navigazione pronta all'uso.
App Android aperta su Google Play, con la visualizzazione web principale evidenziata in un riquadro rosso. Scheda personalizzata aperta nella pagina web Android For Developers, evidenziata in una casella rossa.
Figura 1. WebView (a sinistra) e scheda personalizzata (a destra) evidenziate in rosso.

Perché incorporare contenuti web?

  • Efficienza: riutilizza il codice esistente del tuo sito web. Sfrutta le tecnologie e i contenuti web esistenti.
  • Integrazione: sfrutta i contenuti esterni di fornitori di terze parti, come 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 schede personalizzate 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é uscire e 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 multi-finestra adiacente. In questo modo gli utenti possono eseguire il multitasking tra la tua app e un browser contemporaneamente. O
    • Le schede personalizzate hanno un'opzione per il riquadro laterale che può essere aperto nella stessa attività, ma accanto ai contenuti dell'app esistenti.
  • La scheda personalizzata è gestita dal browser predefinito dell'utente, per i browser che supportano le schede personalizzate.
    • Sebbene sia possibile utilizzare una WebView e fornire un'esperienza di navigazione in-app altamente personalizzabile, consigliamo le schede personalizzate 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 ai propri utenti, incluso l'utilizzo di un nome utente e di una passkey (o password) specifici per la tua app. Ciò consente agli sviluppatori di unificare i flussi di autenticazione tra le piattaforme.
  • Quando si esegue il collegamento a un fornitore di identità o a un'esperienza di accesso di terze parti, ad esempio "Accedi con…", le schede personalizzate sono la soluzione ideale. L'avvio delle schede personalizzate garantisce che le credenziali dell'utente rimangano protette e isolate nel sito di terze parti.

Per maggiori informazioni sull'utilizzo di WebView per l'autenticazione, consulta Autenticare gli utenti con WebView. Per avviare una scheda personalizzata, 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).