Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Android te permite aprovechar el poder de la Web en tus apps. De esta manera, puedes aprovechar la flexibilidad y la eficiencia de poder mostrar ciertos tipos de contenido.
Esto te permite integrar sin problemas contenido web existente en tu app 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 donde deseas un alto grado de flexibilidad para personalizar o actualizar la IU.
Custom Tabs: Una experiencia de navegación completa en la app con el navegador predeterminado del usuario (consulta la compatibilidad con navegadores) 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, 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?
Existen varios beneficios de incorporar contenido web en tu app:
Eficiencia: Reutiliza el código existente de tu sitio web. Se basa en tecnologías y contenido web existentes.
Integración: Usa 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 de forma intercalada o como una ventana dentro de la experiencia de la app
Figura 2. Contenido web incorporado en la app con objetos `WebView`como contenido principal (izquierda) y complementario (derecha).
2. Navegación en la app con Custom Tabs o WebView para casos de uso más avanzados
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
Custom Tabs tienen una opción de panel lateral que se puede abrir en la misma tarea, pero junto al contenido existente de la app.
Custom Tab se ejecuta con el navegador predeterminado del usuario, en el caso de los navegadores que admiten Custom Tabs.
Si bien es posible usar un WebView y brindar una experiencia de navegación en la app altamente personalizable, recomendamos Custom Tabs para una experiencia de navegación 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 a una experiencia de acceso de terceros, como "Acceder con…", Custom Tabs son la mejor opción. Iniciar un Custom Tab ayuda a proteger las credenciales del usuario, ya que las mantiene 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-09-03 (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-09-03 (UTC)"],[],[],null,["Android lets you build on the power of the web within your apps. So, you can\nbenefit from the flexibility and efficiency of being able to display certain\ntypes of content.\n\nThis lets you seamlessly integrate existing web content into your Android\napp, 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\nThere are several benefits to embedding web content in your app:\n\n- **Efficiency**: Reuse existing code from your website. Build on existing web technologies and content.\n- **Integration**: Use external content from third-party providers, such as media and 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):\nUse `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 \\`WebView\\`s 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\nuse 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\n 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 `WebView`s 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 a `Custom Tab` helps protect the user's credential by keeping it isolated to the third-party site.\n\nFor more information about using `WebView`s 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\n4.** An in-app login field (left) and a third-party login opened in a \\`Custom Tab\\` (right)."]]