Flutter App Links y Universal Links: Verificación de Dominio y Automatización de Pruebas en CI

El uso de Android App Links y iOS Universal Links es fundamental para garantizar que los enlaces profundos abran la aplicación de forma segura sin vulnerabilidades de hijacking.
Explicamos cómo configurar los archivos de asociación de dominio, implementar el manejo de rutas en Flutter con GoRouter y app_links, y automatizar la verificación en CI mediante GitHub Actions.
Puntos Clave
- Android App Links: El archivo
assetlinks.jsondebe servirse conContent-Type: application/jsone incluir las huellas SHA-256 de desarrollo y Google Play.- iOS Universal Links: El archivo
apple-app-site-association(AASA) requiere losappIDcorrectos (<TEAM_ID>.<BUNDLE_ID>).- Integración Flutter: Combinar
app_linksyGoRouterasegura la captura de enlaces tanto en cold start como en segundo plano.- Automatización CI: Probar automáticamente el estado de los archivos
.well-knownen GitHub Actions antes de desplegar.
1. Pruebas por Línea de Comandos (CLI)
-
Android CLI:
adb shell am start -a android.intent.action.VIEW \ -c android.intent.category.BROWSABLE \ -d "https://effidev.dev/product/456" -
iOS Simulator CLI:
xcrun simctl openurl booted "https://effidev.dev/product/456"
Conclusión
La automatización de pruebas en CI garantiza que los App Links funcionen siempre en producción de forma impecable.