Utilizzare i contenuti web all'interno dell'app per Android
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
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) per 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.
Figura 1. WebView (a sinistra) e Scheda personalizzata (a destra) evidenziate.
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:
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.
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é 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.
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.
Figura 4. Un campo di accesso in-app (a sinistra) e un accesso di terze parti aperto in una scheda personalizzata (a destra).
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-08-27 UTC.
[null,null,["Ultimo aggiornamento 2025-08-27 UTC."],[],[],null,["Android allows you as a developer to build on the power of the web within your\napps, so you can benefit from the flexibility and efficiency of being able to\ndisplay certain types of content.\n\nThis lets you seamlessly integrate existing web content into your native\nAndroid application, such as to display a news feed, show interactive tutorials,\ndisplay ads, or even host a mini-game without building everything from scratch.\nThink of it as a window to the internet, from within your app. There are two\nways to embed web content into your app:\n\n- [WebView](/reference/android/webkit/WebView): It displays web content you control inline where you want a high degree of flexibility in customizing or updating the UI.\n- [Custom Tabs](/develop/ui/views/layout/webapps/overview-of-android-custom-tabs): A full in-app browsing experience powered by the user's default browser ([see browser support](https://developer.chrome.com/docs/android/custom-tabs/browser-support)) for when users click a link and you want to keep them in the app, instead of leaving to an external browser, with much of the browsing experience out-of-the-box.\n\n**Figure 1.** WebView (left) and Custom Tab (right) outlined.\n\nWhy embed web content?\n\n- Efficiency: Reuse existing code from your website. Build on existing web technologies and content.\n- Integration: Leverage external content from 3P providers, such as Media, Ads, within your app.\n- Flexibility: Update content dynamically without being constrained to predefined UIs, or without releasing app updates.\n\nWhen to use web content?\n\nThere are three primary uses cases for using the Web in your Android app:\n\n**1. [Embedding web content into your app as primary or supporting content](/develop/ui/views/layout/webapps/embed-web-content-in-app): Use WebView**\n\n- Display your own web content inline as a primary experience where you want a high degree of flexibility in customizing or updating the UI.\n- Display other content such as ads, legal terms and regulations, or other third-party content inline, or as a window within your app experience.\n\n**Figure 2.** Web content embedded within the app with WebViews as primary (left) and supporting content (right).\n\n**2. [In-app browsing](/develop/ui/views/layout/webapps/in-app-browsing-embedded-web?) using Custom Tabs, or WebView for more advanced use cases**\n\n- Have a full in-app browsing experience for when users click a link and you want to keep them in the app, instead of leaving to an external browser.\n - Note: For large screen devices such as tablets and foldables, there are additional options to help apps take advantage of additional space:\n - Apps can open weblinks in split screen using [launch an adjacent multi-window experience](/develop/ui/compose/layouts/adaptive/support-multi-window-mode#launch_adjacent). This enables users to multitask between your app and a browser at the same time. OR\n - Custom Tabs have a side panel option that can open in the same task, but next to your existing app content.\n- The Custom Tab is powered by the user's default browser, for browsers which support Custom Tabs.\n - While it's possible to use a WebView and provide a highly customizable in-app browsing experience, we recommend Custom tabs for an out-of-the-box browser experience and seamless transition for when a user wants to open a web link in the browser.\n\n**Figure 3.** Clicking on an in-app link (left) and opening an in-app browser (right).\n\n**3. Login or Authentication flows within your app**\n\nAndroid's suggested approach is to build your login or authentication flows\nusing [Credential Manager](/identity/sign-in/credential-manager). If you find\nyou still need to use Embedded Web for these experiences, use the following\nguidance:\n\n- Some apps use WebViews to provide sign-in flows for their users, including using a username and passkey (or password) specific to your app. This enables developers to unify the authentication flows across platforms.\n- When linking out to a third-party identity provider or login experience, such as \"Sign in with...\", Custom Tabs are the way to go. Launching Custom Tabs ensures the user's credential remains protected and isolated to the 3rd party site.\n\nFor more information about leveraging WebViews for authentication,\nsee [Authenticate users with WebView](/identity/sign-in/credential-manager-webview).\nFor launching a Custom Tab, see [Overview of Android Custom Tabs](/develop/ui/views/layout/webapps/overview-of-android-custom-tabs).\n**Figure 4.** An in-app login field (left) and a third-party login opened in a Custom Tab (right)."]]