Skip to content

Universal Links: o equivalente no iOS aos Android App Links

Os Universal Links são o equivalente no iOS aos Android App Links (também conhecidos como Digital Asset Links) e são usados para deep linking. Ao tocar em um universal link (que direciona para o site do app), o usuário será redirecionado perfeitamente para o aplicativo correspondente instalado, sem passar pelo Safari. Se o app não estiver instalado, o link será aberto no Safari.

Os Universal Links são links web padrão (HTTP/HTTPS) e não devem ser confundidos com os esquemas de URL personalizados (custom URL schemes), que originalmente também eram usados para deep linking.

Por exemplo, o app Telegram suporta tanto esquemas de URL personalizados quanto universal links:

  • tg://resolve?domain=fridadotre é um esquema de URL personalizado e usa o esquema tg://.
  • https://telegram.me/fridadotre é um universal link e usa o esquema https://.

Ambos resultam na mesma ação: o usuário será redirecionado para o chat especificado no Telegram ("fridadotre" neste caso). No entanto, os universal links oferecem diversos benefícios importantes que não se aplicam ao uso de esquemas de URL personalizados e são a forma recomendada de implementar deep linking, de acordo com a Documentação para Desenvolvedores da Apple. Especificamente, os universal links são:

  • Únicos: Diferente dos esquemas de URL personalizados, os universal links não podem ser reivindicados por outros apps, pois usam links HTTP ou HTTPS padrão para o site do app. Eles foram introduzidos como uma forma de prevenir ataques de sequestro de esquemas de URL (um app instalado após o app original pode declarar o mesmo esquema, e o sistema pode direcionar todas as novas solicitações para o último app instalado).
  • Seguros: Quando os usuários instalam o app, o iOS faz o download e verifica um arquivo (o Apple App Site Association ou AASA) que foi enviado para o servidor web para garantir que o site permite que o app abra URLs em seu nome. Apenas os proprietários legítimos da URL podem enviar este arquivo, portanto a associação do seu site com o app é segura.
  • Flexíveis: Os universal links funcionam mesmo quando o app não está instalado. Clicar em um link para o site abriria o conteúdo no Safari, como os usuários esperam.
  • Simples: Uma única URL funciona tanto para o site quanto para o app.
  • Privados: Outros apps podem se comunicar com o app sem precisar saber se ele está instalado.

Você pode aprender mais sobre Universal Links na publicação "Aprendendo sobre Universal Links e Fuzzing de Esquemas de URL no iOS com Frida" de Carlos Holguera.