Antes de iOS 9, navegar entre sitios web móviles y aplicaciones nativas de iPhone era una experiencia impredecible y torpe. Los desarrolladores confiaron en protocolos URI personalizados como instagram:// o mybank://. Estos esquemas con frecuencia activaban alertas discordantes del sistema que preguntaban "¿Abrir en la aplicación?", fallaban por completo si faltaba la aplicación y padecían graves vulnerabilidades de seguridad. Para solucionar estos defectos fundamentales, Apple presentó Universal Links. Pero, ¿qué es un vínculo universal y por qué transformó la arquitectura del software móvil?

En esencia, un enlace universal es una URL web HTTPS estándar y segura que se dirige sin problemas a controladores de vista específicos dentro de una aplicación iOS instalada. Si la aplicación está instalada, iOS la inicia instantáneamente sin abrir Safari. Si falta la aplicación, el sistema operativo carga con gracia la página web responsiva en Safari sin mostrar diálogos de error. En esta profundización técnica, examinamos el funcionamiento interno de Apple Universal Links, exploramos el archivo de configuración AASA y explicamos por qué el enrutamiento móvil moderno depende de este protocolo.

Comprender los enlaces universales es crucial para cualquier ingeniero de iOS o especialista en marketing digital que busque ofrecer recorridos de cliente sin fricciones desde campañas de correo electrónico, plataformas sociales y resultados de motores de búsqueda.

Diagrama que muestra cómo Apple Universal Links enruta las solicitudes web de iOS directamente a aplicaciones móviles nativas
Apple Universal Links verifica las asociaciones de dominio para iniciar aplicaciones instaladas directamente y, al mismo tiempo, proporciona un respaldo perfecto a Safari.

Para comprender el propósito de los enlaces universales, es necesario examinar las deficiencias de los esquemas de URL personalizados heredados. Los esquemas personalizados no tenían un registro central. Cualquier desarrollador podría crear una aplicación que reclame el esquema paypal://, interceptando parámetros financieros confidenciales destinados a un servicio legítimo, como se describe en nuestra guía sobre esquemas de URL móviles. Además, si un usuario sin la aplicación hacía clic en un enlace de esquema personalizado en Safari, iOS mostraba un grave error del sistema: "Safari no puede abrir la página porque la dirección no es válida".

Apple diseñó Universal Links para establecer tres estándares operativos críticos:

  • Singularidad y seguridad: debido a que los enlaces universales utilizan dominios web estándar (por ejemplo, https://dslink.me/path), ningún otro desarrollador puede reclamar su enlace a menos que controle sus registros DNS y certificados SSL verificados.
  • Reserva sin fricciones: si un usuario de iPhone no tiene su aplicación instalada, exactamente la misma URL abre automáticamente su sitio web móvil en Safari. No hay enlaces rotos ni mensajes de error.
  • Identidad única: los especialistas en marketing y desarrolladores solo necesitan compartir una única URL que sirva tanto a los visitantes web en computadoras de escritorio como a los usuarios de aplicaciones nativas en dispositivos móviles.

Este diseño también resolvió problemas por los cuales un enlace se abre en Safari en lugar de en la aplicación debido a transferencias de protocolo rotas.

La arquitectura de la Apple App Site Association (AASA)

La base operativa de Universal Links es un protocolo de enlace seguro entre el sistema operativo de Apple y su servidor web. Este protocolo de enlace está mediado por el archivo Apple App Site Association (AASA), un documento JSON alojado en:

https://yourdomain.com/.well-known/apple-app-site-association

Este archivo define qué ID de aplicación pueden manejar rutas URL específicas en su dominio. A continuación se muestra un ejemplo de formato AASA JSON moderno:

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "TEAMID1234.com.example.myapp",
        "paths": ["/video/*", "/product/*", "/user/*"],
        "components": [
          {
            "/": "/video/*",
            "comment": "Matches all video detail pages"
          }
        ]
      }
    ]
  }
}

Se aplican reglas técnicas clave de alojamiento al archivo AASA:

  • Debe entregarse a través de HTTPS con un certificado SSL confiable.
  • Debe devolver un Content-Type de application/json.
  • Debe devolver un código de estado HTTP 200 OK sin ningún redireccionamiento de HTTP a HTTPS.
  • Apple almacena en caché este archivo en su red de entrega de contenido (CDN); Los cambios realizados en su servidor pueden tardar algún tiempo en propagarse en todos los dispositivos iOS.

Crea un enlace profundo inteligente en segundos

Deje de perder visitantes móviles debido a torpes pantallas de inicio de sesión del navegador en la aplicación. Utilice DSLink para generar enlaces profundos limpios que abran aplicaciones con análisis en tiempo real.

Open Universal Links vs schemes guide

Comprender las diferencias arquitectónicas entre los enlaces universales y los esquemas personalizados ayuda a los desarrolladores a diseñar sistemas de enrutamiento multiplataforma resistentes, como se explora en nuestra comparación de enlaces universales versus esquemas de URL:

Característica Enlaces Universales de Apple Esquemas de URI personalizados
Formato de URL HTTPS estándar (https://brand.com) Protocolo propietario (brand://)
Seguridad y propiedad Verificado mediante DNS y AASA JSON Inconfirmado; propenso al secuestro de planes
Manejo de reserva Carga el sitio web en Safari con gracia Muestra el error "Safari no puede abrir la página"
Comportamiento rápido Abre la aplicación inmediatamente sin indicaciones A menudo activa "¿Abrir en la aplicación?" diálogos del sistema
Soporte de navegador en la aplicación A menudo restringido por vistas web sociales Se puede activar mediante redirecciones de JavaScript

Si bien los enlaces universales son superiores en seguridad y experiencia de usuario, los esquemas personalizados todavía se mantienen con frecuencia como respaldo cuando se trata de navegadores de redes sociales obstinados en la aplicación, como se detalla en nuestra guía sobre navegación del navegador en la aplicación.

Cuando un usuario de iPhone toca un enlace en Apple Mail, Mensajes o una aplicación de terceros, iOS ejecuta un flujo de trabajo de decisión preciso:

  1. Búsqueda de base de datos local: iOS comprueba su base de datos indexada local de dominios verificados almacenados durante la instalación de la aplicación.
  2. Evaluación de ruta: Si el dominio coincide, iOS evalúa si la ruta URL coincide con los patrones definidos en el documento AASA.
  3. Comprobación de preferencias del usuario: iOS comprueba si el usuario ha alternado previamente las preferencias de Safari tocando el botón de ruta de navegación del dominio en la parte superior derecha.
  4. Transferencia nativa: si se pasan todas las comprobaciones, iOS inicia la aplicación nativa y pasa un objeto NSUserActivity que contiene la URL en la que se hizo clic al delegado de la aplicación o al controlador del ciclo de vida de SwiftUI.
  5. Reserva de Safari: si falta la aplicación, la ruta no coincide o el dominio no está verificado, iOS inicia Safari y busca la página web normalmente.

Los desarrolladores pueden probar estas transiciones de enrutamiento utilizando nuestra herramienta de verificación de enlaces interactiva para verificar los códigos de respuesta y las asignaciones de dominio.

Para garantizar un enrutamiento de Universal Link impecable en sus campañas de marketing e infraestructura de desarrollador, siga estas mejores prácticas probadas en batalla:

  • Nunca incluya enlaces universales en redirecciones estándar: si un enlace pasa por una redirección 301/302 genérica en un dominio no asociado, iOS rompe la cadena y dirige el clic a Safari. Obtenga más información en nuestra guía de enlaces profundos frente a acortadores.
  • Cuenta para navegadores sociales dentro de la aplicación: aplicaciones como Instagram, TikTok y Facebook capturan clics dentro de vistas web en espacio aislado. Utilice enlaces profundos inteligentes impulsados ​​por DSLink que detectan la vista web y activan apretones de manos intencionados para escapar.
  • Admite rutas de contenido universales: asegúrese de que su aplicación móvil nativa y su servidor web compartan rutas de enrutamiento de URL consistentes (por ejemplo, rutas /item/123 al mismo producto tanto en la web como en la aplicación).
  • Valide la sintaxis de AASA continuamente: utilice la herramienta de validación de API de búsqueda de aplicaciones de Apple para verificar que su archivo AASA permanezca válido, sin daños y con el formato adecuado después de cada implementación del servidor.

Al dominar Apple Universal Links y combinarlos con enrutamiento inteligente multiplataforma, ofrece experiencias móviles sin fricciones que mantienen a sus usuarios inmersos en su software nativo.

Preguntas frecuentes

¿Qué es un enlace universal en iOS?

Un enlace universal es una dirección web HTTPS estándar que Apple iOS reconoce como asociada con una aplicación instalada, lo que permite que el sistema operativo abra la aplicación nativa directamente en lugar de cargar Safari.

¿Cómo verifica Apple que una aplicación posee un dominio?

Apple verifica la propiedad a través del archivo JSON apple-app-site-association (AASA) alojado en el dominio web. iOS descarga este archivo al instalar la aplicación para verificar la ID de la aplicación y las coincidencias de ruta.

¿Qué sucede si un usuario hace clic en un enlace universal pero no tiene la aplicación instalada?

Si la aplicación no está instalada, iOS carga sin problemas la página web de destino en Safari sin mostrar mensajes de error, cuadros de diálogo de advertencia ni pantallas rotas.

¿Se pueden utilizar enlaces universales en dispositivos Android?

No. Los enlaces universales son un estándar de iOS y iPadOS específico de Apple. Android utiliza una tecnología equivalente llamada Android App Links, que se basa en la verificación de Digital Asset Links.