Los Android App Links son una función especial de vinculación directa en Android 6 y versiones posteriores que permite que las URLs verificadas de tu sitio web abran inmediatamente el contenido correspondiente en tu app para Android, sin requerir que el usuario seleccione tu app en un diálogo de desambiguación. Para que esto sea posible, Android usa Vínculos de recursos digitales alojadas en tu sitio web para establecer una asociación segura y verificada entre tu sitio web y tu app. Después de verificar la asociación, Android puede enrutar automáticamente tus vínculos directos a tu sitio web directamente a tu app para que los controle.
A partir de Android 15, los vínculos de apps son aún más potentes con la introducción de los App Links dinámicos. Con las nuevas capacidades dinámicas, puedes ajustar los comportamientos de los vínculos directos de tu app sobre la marcha, con más control y sin necesidad de lanzar una nueva versión de la app.
Por qué deberías usar vínculos de apps:
- Experiencia del usuario fluida: Lleva a los usuarios directamente a contenido específico de tu app desde resultados de la búsqueda, sitios web, mensajería y otras apps. Como los vínculos de apps usan una sola URL para el mismo contenido en tu sitio web y en tu app, los usuarios que no tienen la app instalada acceden a tu sitio web. No hay errores 404 ni de otro tipo.
- Seguridad mejorada: Los vínculos de apps requieren la verificación de la propiedad del dominio, lo que impide que otras apps intercepten tus vínculos.
- Configuración dinámica (Android 15 o versiones posteriores): Actualiza el comportamiento de vinculación directa de tu app sobre la marcha, lo que permite una mayor flexibilidad y actualizaciones más rápidas para elementos como URLs personalizadas, campañas de temporada o vínculos específicos del usuario.
- Interacción: Puedes atraer a los usuarios a través de vínculos en resultados de la búsqueda, anuncios, páginas web, mensajería y mucho más.
Cómo admitir vínculos de apps
- Crea vínculos directos a contenido específico en tu app: En el manifiesto de la app, crea filtros de intents para los URIs de tu sitio web y configura tu app de manera que use datos de intents para enviar a los usuarios al contenido correcto en tu app.
- Agrega la verificación para tus vínculos directos: Configura tu app para solicitar la verificación de los vínculos de apps. Luego, publica un archivo JSON de Vínculos de recursos digitales en tus sitios web para verificar la propiedad.
Como alternativa, puedes usar el Asistente de Android App Links en Android Studio para que te guíe a través de cada uno de los pasos necesarios para crear y verificar Android App Links. Para obtener más información, consulta Herramientas para desarrolladores de vínculos de apps.
Disponibilidad de los vínculos de apps
- App Links dinámicos: Android 15 (nivel de API 35) o versiones posteriores, en dispositivos con servicios de Google instalados.
- Vínculos de apps: Android 6 (nivel de API 23) y versiones posteriores, en dispositivos con servicios de Google instalados.
- Vinculación directa normal (administrada por el usuario): Todas las versiones de Android, en todos los dispositivos.
Cómo funcionan los vínculos de apps
Los vínculos de apps son una forma especial de vinculación directa que te brinda control total sobre el manejo de los vínculos a tu propio sitio web. Se basa en el mismo sistema basado en intents que usan otros tipos de vínculos directos, pero agrega un paso de verificación para tus vínculos mediante un archivo de Vínculos de recursos digitales en tu sitio web.
Los vínculos de apps crean una asociación segura y confiable entre tu app y tu sitio web mediante datos de la app y un archivo assetlinks.json especial que alojas en tu sitio web o dominio. El archivo assetlinks.json declara instrucciones de Vínculos de recursos digitales para verificar la asociación de la app.
Este es el flujo conceptual:
- El manifiesto de tu app declara URLs en un filtro de intents con
android:autoVerify="true" y apunta al host de tu sitio web. - Cuando se instala la app, el sistema Android recupera el archivo
assetlinks.jsonde una ubicación conocida en tu servidor web. - El sistema verifica que el archivo
assetlinks.jsonsea válido y quesha256_cert_fingerprintscoincida con el certificado de firma de tu app. - Cuando el usuario hace clic en un vínculo coincidente, el sistema lo enruta directamente a tu app sin mostrar un diálogo de desambiguación.
Como los vínculos de apps usan URLs HTTP y la asociación con un sitio web, los usuarios que no tienen instalada tu app acceden directamente al contenido de tu sitio. De esta manera, los vínculos de apps ofrecen una experiencia confiable y fluida para los usuarios que presionan vínculos directos a tus propiedades web.
App Links dinámicos
A partir de Android 15, los vínculos de apps son aún más potentes con la introducción de los App Links dinámicos. Con los App Links dinámicos, tienes la opción de actualizar tus reglas de vinculación directa en el servidor, en tu archivo assetlinks.json, sin necesidad de publicar una nueva versión de tu app. Los App Links dinámicos admiten campos de Vínculos de recursos digitales para ajustar tus reglas de vinculación directa. Los dispositivos Android con servicios de Google instalados actualizarán tu archivo periódicamente y aplicarán tus nuevas reglas de vinculación directa de forma dinámica. No es necesario actualizar la app.
Anteriormente, este archivo se usaba principalmente para la verificación básica. Ahora, es una potente herramienta de configuración que te permite especificar rutas, parámetros de consulta, fragmentos y exclusiones, lo que proporciona una solución de vinculación directa dinámica y sólida:
- Compatibilidad con exclusiones: Puedes especificar ciertas rutas o secciones de una URL que no deberían abrir tu app, incluso si, de lo contrario, coincidirían con la configuración de tu vínculo de apps.
- Compatibilidad con parámetros de consulta: Con la nueva funcionalidad de parámetros de consulta, puedes definir parámetros específicos que, si están presentes en una URL, impedirán que se abra tu app. Esto abre posibilidades interesantes para las exclusiones dinámicas, las pruebas A/B y la habilitación gradual de la vinculación de apps para ciertos segmentos de usuarios.
- Actualizaciones dinámicas: Realiza actualizaciones en la configuración de tus vínculos de apps sin
necesidad de actualizar tu app. Para ello, especifica las rutas de URL que tu app controla
directamente dentro del
assetlinks.jsonalojado en tu servidor.
Los App Links dinámicos también te brindan un control detallado sobre las URLs que deseas abrir en tu app, incluida la coincidencia de rutas de URL, fragmentos y parámetros de consulta. También puedes excluir cualquiera de las coincidencias para que no se les permita abrir tu app. Para obtener más información, consulta Configura reglas dinámicas.
Este es el flujo conceptual de los App Links dinámicos:
- El manifiesto de tu app declara URLs en un filtro de intents con
android:autoVerify="true" y apunta al host de tu sitio web. - Cuando se instala la app, el sistema Android recupera el archivo
assetlinks.jsonde una ubicación conocida en tu servidor web. - El sistema verifica que el archivo sea válido y que
sha256_cert_fingerprintscoincida con el certificado de firma de tu app. - El sistema analiza las reglas de vinculación directa que definiste en el campo
dynamic_app_link_componentsde la instrucción de Vínculos de recursos digitales y las combina con las reglas declaradas en el manifiesto.- Cuando el usuario hace clic en un vínculo coincidente, el sistema lo dirige directamente a tu app, sin mostrar un diálogo de desambiguación.
- El sistema vuelve a recuperar periódicamente el archivo
assetlinks.jsonpara obtener las reglas más recientes, lo que te permite actualizar tus vínculos sin una actualización de la app. La recuperación periódica es compatible con dispositivos que ejecutan Android 15 (nivel de API 35) o versiones posteriores que tienen instalados los servicios de Google.
Casos de uso de ejemplo
- Campañas de marketing de temporada: Una app de venta minorista podría agregar una regla para "/promo/summer-sale" al archivo
assetlinks.jsonpara dirigir a los usuarios a una pantalla de ofertas específica. Una vez que finalice la oferta, se puede quitar la regla sin requerir que los usuarios actualicen la app. - URLs personalizadas para socios: Si tienes una asociación con un influencer, puedes crear una URL personalizada como "/partner/influencer-name" y agregar una regla para ella. Luego, puedes hacer un seguimiento, actualizar o quitar esta URL de forma dinámica a medida que cambian las asociaciones.
- Rutas de URL de pruebas A/B: Un desarrollador podría publicar una función nueva en una ruta de URL específica y agregar una regla para ella en el archivo
assetlinks.json. Esto les permite probar la función con un subconjunto de usuarios y, luego, modificar el enrutamiento sin una implementación completa de la app. - Eventos de corta duración: Una app de venta de entradas o de eventos podría agregar reglas de URL para eventos específicos. Una vez que haya pasado el evento, puedes borrar estas reglas del servidor.
Compatibilidad con implementaciones de vínculos de apps
Las extensiones de App Links dinámicos en Android 15 están diseñadas para una compatibilidad total con las implementaciones existentes de vínculos de apps en dispositivos que ejecutan versiones anteriores de Android. Las versiones inferiores de la app no pueden usar la configuración dinámica ni las funciones de configuración, y volverán a las reglas declaradas en el manifiesto. Tu vínculo de apps aún puede abrir correctamente tu app o volver a la Web para los usuarios de versiones anteriores de Android. En la mayoría de los casos, puedes implementar reglas dinámicas de forma segura sin afectar la experiencia del resto de tu base de usuarios. Para obtener más detalles sobre cómo configurar tus filtros de intents para la retrocompatibilidad, consulta Retrocompatibilidad de App Links dinámicos para Android 14 y versiones anteriores.
Consideraciones para configurar reglas de filtro de App Links dinámicos
Si configuras filtros de intents para usarlos con App Links dinámicos en Android 15 y versiones posteriores, ten en cuenta que las reglas de enrutamiento a nivel de ruta definidas en tu archivo assetlinks.json del servidor no pueden expandir el alcance que estableciste de forma estática en las reglas de filtro de intents de tu archivo de manifiesto.
Por este motivo, te recomendamos que configures el alcance más amplio posible en los filtros de intents del manifiesto y, luego, uses las reglas assetlinks.json del servidor para realizar ajustes adicionales. Con esta configuración ideal, podrás agregar nuevos vínculos de apps de forma dinámica que se ajusten al amplio alcance establecido en el manifiesto.
Planifica la implementación de tus vínculos de apps
Para admitir vínculos de apps, se requiere una implementación en tu app, así como trabajo del servidor para configurar tu archivo assetlinks.json. Aquí se enumeran las tareas generales de preparación e implementación, con vínculos a otros recursos para obtener más detalles.
- Planifica tus vínculos directos: Comienza con una evaluación de los vínculos directos que necesitas, los patrones de URL que usarán, cómo y cuándo los actualizarás, y la actividad o acción a la que deseas que se resuelva cada URL en tu app.
- Admite App Links dinámicos: Brinda a los usuarios de los dispositivos Android más recientes la mejor experiencia posible. Aprovecha los App Links dinámicos para los usuarios de Android 15 o versiones posteriores.
- Planifica tus reglas de filtro dinámicas: Si usas App Links dinámicos, planifica cómo funcionarán tus reglas del servidor con las reglas definidas de forma estática en el manifiesto de tu app. Ten en cuenta que las reglas de filtro de tu archivo assetlinks.json no pueden expandir el alcance de los filtros del manifiesto de tu app. Debes planificar que los filtros del manifiesto declaren el alcance más amplio posible y, luego, tus reglas del servidor pueden ajustar esas reglas según sea necesario. Para obtener más información, consulta Configura reglas dinámicas.
- Crea y prueba filtros de intents para tus vínculos: Declara tus vínculos directos en filtros de intents y prueba la coincidencia de patrones de URL y el manejo de intents entrantes. Para admitir App Links dinámicos, ten en cuenta que es posible que debas mover algunas rutas detalladas a tu archivo JSON del servidor.
- Lee datos de intents de App Link entrantes: Controla correctamente los intents de vínculos directos entrantes y resuélvelos en la Activity adecuada. La implementación de los vínculos de apps es la misma que para los vínculos directos normales, que se explica en Lee datos de intents entrantes.
- Configura asociaciones de sitios web y reglas dinámicas: Para admitir vínculos de apps, debes configurar un archivo del servidor alojado en tu sitio web o dominio. Los dispositivos Android recuperarán este archivo para validar la implementación de tus vínculos de apps con tu app. Obtén más información aquí.
- Prueba la verificación de vínculos de apps: Verifica que el sistema Android pueda verificar automáticamente tus vínculos directos de forma correcta. Usa la depuración y las pruebas de extremo a extremo para verificar que tu configuración sea segura y funcione correctamente en todas las rutas de App Link verificadas.
- Obtén información sobre las herramientas que puedes usar para configurar vínculos de apps, incluidos Android Studio y Play Console. Obtén más información aquí.