Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Android te permite, como desarrollador, aprovechar el poder de la Web en tus apps, de modo que puedas beneficiarte de la flexibilidad y la eficiencia de poder mostrar ciertos tipos de contenido.
Esto te permite integrar sin problemas contenido web existente en tu aplicación nativa para Android, por ejemplo, para mostrar un feed de noticias, mostrar instructivos interactivos, mostrar anuncios o incluso alojar un minijuego sin tener que crear todo desde cero.
Piensa en ella como una ventana a Internet desde tu app. Hay dos formas de incorporar contenido web en tu app:
WebView: Muestra contenido web que controlas de forma intercalada en los lugares en los que deseas un alto grado de flexibilidad para personalizar o actualizar la IU.
Pestañas personalizadas: Una experiencia de navegación completa en la app con la tecnología del navegador predeterminado del usuario (consulta la compatibilidad con navegadores) para cuando los usuarios hacen clic en un vínculo y quieres que permanezcan en la app, en lugar de que salgan a un navegador externo, con gran parte de la experiencia de navegación lista para usar.
Figura 1. Se muestran los esquemas de WebView (izquierda) y Pestaña personalizada (derecha).
¿Por qué incorporar contenido web?
Eficiencia: Reutiliza el código existente de tu sitio web. Se basa en tecnologías y contenido web existentes.
Integración: Aprovecha el contenido externo de proveedores externos, como medios y anuncios, en tu app.
Flexibilidad: Actualiza el contenido de forma dinámica sin estar limitado a las IU predefinidas ni tener que lanzar actualizaciones de la app.
¿Cuándo usar contenido web?
Existen tres casos de uso principales para usar la Web en tu app para Android:
Mostrar tu propio contenido web intercalado como una experiencia principal cuando desees un alto grado de flexibilidad para personalizar o actualizar la IU
Mostrar otro contenido, como anuncios, condiciones y reglamentaciones legales, o cualquier otro contenido de terceros intercalado o como una ventana dentro de la experiencia de tu app
Figura 2. Contenido web incorporado en la app con WebViews como contenido principal (izquierda) y complementario (derecha).
Ofrece una experiencia de navegación completa en la app para cuando los usuarios hagan clic en un vínculo y quieras que permanezcan en la app, en lugar de que salgan a un navegador externo.
Nota: En el caso de los dispositivos con pantallas grandes, como las tablets y los dispositivos plegables, hay opciones adicionales para ayudar a las apps a aprovechar el espacio adicional:
Las apps pueden abrir vínculos web en pantalla dividida con launch an adjacent multi-window experience. Esto permite que los usuarios realicen varias tareas a la vez entre tu app y un navegador. O
Las pestañas personalizadas tienen una opción de panel lateral que se puede abrir en la misma tarea, pero junto al contenido existente de tu app.
La pestaña personalizada se basa en el navegador predeterminado del usuario, en el caso de los navegadores que admiten pestañas personalizadas.
Si bien es posible usar un WebView y proporcionar una experiencia de navegación en la app altamente personalizable, recomendamos las pestañas personalizadas para una experiencia de navegador lista para usar y una transición fluida cuando un usuario quiera abrir un vínculo web en el navegador.
Figura 3: Haz clic en un vínculo integrado en la app (izquierda) y abre un navegador integrado en la app (derecha).
3. Flujos de acceso o autenticación en tu app
El enfoque sugerido de Android es compilar tus flujos de acceso o autenticación con Credential Manager. Si crees que aún necesitas usar Embedded Web para estas experiencias, sigue estas recomendaciones:
Algunas apps usan WebViews para proporcionar flujos de acceso a sus usuarios, incluido el uso de un nombre de usuario y una llave de acceso (o contraseña) específicos para tu app. Esto permite que los desarrolladores unifiquen los flujos de autenticación en todas las plataformas.
Cuando se vincula a un proveedor de identidad o experiencia de acceso de terceros, como "Acceder con…", las pestañas personalizadas son la mejor opción. El lanzamiento de pestañas personalizadas garantiza que las credenciales del usuario permanezcan protegidas y aisladas en el sitio de terceros.
Figura 4. Un campo de acceso en la app (izquierda) y un acceso de terceros abierto en una pestaña personalizada (derecha).
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-08-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-27 (UTC)"],[],[],null,["# Use web content within your Android app\n\nAndroid 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\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------------------------\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)."]]