La depuración de enlaces universales que no abren la aplicación requiere un enfoque sistemático, comprobando tanto la configuración de la aplicación como la configuración del servidor web. A continuación se ofrece una guía completa:
1. Verificar la configuración básica y el entorno de prueba
- Dispositivo real, no simulador: los enlaces universales suelen comportarse de forma diferente en los simuladores. Pruébalos siempre en un dispositivo iOS físico.
- Elimina y vuelve a instalar la aplicación: después de realizar cambios, elimina siempre la aplicación de tu dispositivo y vuelve a instalarla. Esto obliga a iOS a volver a descargar el archivo
apple-app-site-association(AASA). - Prueba desde fuentes adecuadas: los enlaces universales no funcionarán si los pegas directamente en la barra de direcciones URL del navegador. Prueba tocando enlaces de otras aplicaciones como Notas, Mail, iMessage o Slack. Es posible que algunas aplicaciones como Instagram, Twitter o Facebook no admitan enlaces universales directamente.
2. Comprueba el archivo apple-app-site-association (AASA)
El archivo AASA es crucial para los enlaces universales. iOS descarga este archivo desde tu servidor web para determinar qué enlaces puede gestionar tu aplicación.
- Ubicación del archivo: El archivo AASA debe estar alojado en
https://yourdomain.com/apple-app-site-associationohttps://yourdomain.com/.well-known/apple-app-site-association. - HTTPS y sin redireccionamientos: El archivo debe servirse a través de HTTPS y sin redireccionamientos 3xx.
- Encabezado Content-Type: Asegúrate de que el servidor devuelve el encabezado
Content-Typecorrecto para el archivo AASA. - Validez JSON: El archivo AASA debe ser un JSON válido y cumplir con el esquema especificado. Puedes utilizar validadores en línea (como el validador AASA de Branch.io) para comprobar su corrección.
appIDy rutas: Verifique que elappIDde su archivo AASA coincida con el ID de equipo y el identificador de paquete de su aplicación (por ejemplo,ABC123DEF.com.example.app). Además, asegúrate de que la matrizpathsespecifica correctamente las rutas URL que debe gestionar tu aplicación.- Registros del servidor: Comprueba los registros HTTPS de tu servidor web para confirmar que iOS descarga el archivo AASA cuando se instala tu aplicación.
3. Configuración de la aplicación en Xcode
- Derecho de dominios asociados: En su proyecto Xcode, vaya a la pestaña «Signing & Capabilities» (Firma y capacidades) y asegúrese de que «Associated Domains» (Dominios asociados) esté habilitado. Añada su dominio en el formato
applinks:yourdomain.com. - Depuración frente a lanzamiento: Si estás depurando en desarrollo, asegúrate de que estás editando la versión de depuración de «Signing & Capabilities» (Firma y capacidades). Para omitir el CDN de Apple Universal Links en desarrollo, configura tus dominios de depuración como
applinks:tudominio.com?mode=developer. - Delegado de la aplicación/Delegado de la escena: Verifique que el
AppDelegate(oSceneDelegatepara iOS 13+) de su aplicación implemente correctamente el métodoapplication(_:continueUserActivity:restorationHandler:)para gestionar los objetosNSUserActivityentrantes para los enlaces universales.
4. Depuración específica del dispositivo
- Registros de la consola: conecta tu dispositivo a Xcode y abre la consola (Ventana > Dispositivos y simuladores > [Tu dispositivo] > Abrir consola). Filtra los registros por «swcd» (Shared Web Credentials Daemon) para ver si el registro de tu enlace universal ha funcionado o ha fallado.
- Ajustes de desarrollador (iOS 13+):
- Activa el «Modo desarrollador» en Ajustes > Privacidad y seguridad > Modo desarrollador.
- En Ajustes > Desarrollador > Enlaces universales, habilite «Desarrollo de dominios asociados».
- Utilice la herramienta «Diagnóstico» en la sección Enlaces universales para introducir la URL de su enlace universal y comprobar si es válida para la aplicación instalada.
- Reinicia el dispositivo: Reiniciar el dispositivo puede borrar las cachés de enlaces universales de iOS y resolver problemas.
- Prueba en diferentes dispositivos/versiones de iOS: Esto ayuda a descartar problemas de configuración específicos del dispositivo.
- Vuelve a habilitar los enlaces universales: Si un enlace universal se abrió anteriormente en Safari, es posible que se haya deshabilitado para ese enlace específico. Mantén pulsado el enlace en una aplicación como Notas y selecciona «Abrir en [nombre de tu aplicación]» para volver a habilitarlo. Si ves un banner de aplicación inteligente en Safari, al pulsar «ABRIR» en el banner también se pueden volver a habilitar los enlaces universales.
5. Solución avanzada de problemas
sysdiagnoseRegistros: Para obtener información más detallada, puede acceder a los registrossysdiagnoseen su dispositivo iOS (Ajustes > Privacidad y seguridad > Análisis y mejoras > Datos analíticos). Estos registros pueden proporcionar información detallada sobre cómo iOS procesa sus enlaces universales.- Herramientas de terceros: Utilice herramientas como la herramienta de validación de la API de búsqueda de aplicaciones de Apple u otros validadores de terceros para verificar la configuración de su sitio web.
Si sigue estos pasos de forma sistemática, podrá identificar y resolver la mayoría de los problemas que impiden que sus enlaces universales abran su aplicación.