Skip to content

Guia de deep linking para iOS

Este guia ajuda você a escolher a estratégia de deep linking certa para seu app iOS, dependendo do canal de envio de mensagens que você está usando e se você usa um provedor de links de terceiros, como o Branch.

Para detalhes de implementação, consulte Deep linking. Para solução de problemas, consulte Solução de problemas de deep linking.

Existem três maneiras de lidar com links de mensagens da Braze em seu app iOS. Cada uma funciona de maneira diferente e é adequada para diferentes canais e casos de uso.

Deep links com esquema personalizado (por exemplo, myapp://products/123) abrem seu app diretamente em uma tela específica. São a opção mais simples para canais em que os links não são modificados por terceiros.

Use deep links com esquema personalizado quando:

  • Enviar notificações por push, mensagens no app ou Content Cards
  • Você não precisa que o link funcione se o app não estiver instalado
  • Você não precisa de rastreamento de cliques (encapsulamento de link por ESP de e-mail)

Não use deep links com esquema personalizado quando:

  • Enviar e-mails — os ESPs encapsulam links para rastreamento de cliques, o que quebra esquemas personalizados
  • Você precisa que o link volte para uma página da web se o app não estiver instalado

Links universais (por exemplo, https://myapp.com/products/123) são URLs HTTPS padrão que o iOS pode encaminhar para o seu app em vez de abrir em um navegador. Eles exigem configuração no lado do servidor (um arquivo AASA) e configuração no lado do app (direito de Associated Domains).

Use links universais quando:

  • Enviar e-mails. Seu ESP encapsula links para rastreamento de cliques, então os links devem ser HTTPS.
  • Enviar SMS ou outros canais em que os links são encapsulados ou encurtados.
  • Você precisa que o link volte para uma página da web quando o app não estiver instalado.
  • Você está usando um provedor de links de terceiros, como Branch ou AppsFlyer.

Não use links universais quando:

  • Você só precisa de deep links de push, mensagens no app ou Content Cards. Os esquemas personalizados são mais simples.

“Abrir URL da web dentro do app”

Esta opção abre uma página da web dentro de um WebView modal no seu app. É totalmente gerenciada pelo SDK da Braze usando Braze.WebViewController — você não precisa escrever nenhum código de tratamento de URL.

Use “Abrir URL da web dentro do app” quando:

  • Você deseja exibir uma página da web (como uma promoção ou artigo) sem sair do seu app.
  • A URL é uma página web HTTPS padrão, não um deep link para uma tela específica do app.

Não use “Abrir URL da web dentro do app” quando:

  • Você precisa navegar para uma visualização específica no seu app. Em vez disso, use um esquema personalizado ou um link universal.
  • A página da web requer autenticação ou possui cabeçalhos de Content Security Policy que bloqueiam a incorporação.

“Abrir URL da web dentro do app”

Quando você precisa de um arquivo AASA

Um arquivo Apple App Site Association (AASA) só é necessário quando você usa links universais. Ele informa ao iOS quais URLs seu app pode processar.

Você precisa de um arquivo AASA quando:

  • Você envia deep links em campanhas de e-mail (porque os ESPs encapsulam os links em URLs de rastreamento de cliques HTTPS).
  • Você envia deep links em campanhas de SMS (porque os links podem ser encurtados para URLs HTTPS).
  • Você usa Branch, AppsFlyer ou outro provedor de links (porque eles usam seus próprios domínios HTTPS).
  • Você usa links universais de push, mensagens no app ou Content Cards (menos comum, mas possível com forwardUniversalLinks = true).

Você não precisa de um arquivo AASA quando:

  • Você só usa deep links com esquema personalizado (por exemplo, myapp://) de push, mensagens no app ou Content Cards.
  • Você usa a opção Open Web URL Inside App.

Para instruções de configuração do AASA, consulte Links universais e App Links.

Quando você precisa de código no app para lidar com links

O método delegado que você implementa depende do tipo de link que está usando:

Usando o Branch com a Braze

Se você usar o Branch como seu provedor de links, sua configuração exigirá algumas etapas adicionais além da configuração padrão de link universal:

  1. SDK do Branch: Integre o SDK do Branch seguindo a documentação do Branch.
  2. Associated Domains: Adicione seu domínio do Branch (por exemplo, applinks:yourapp.app.link) no Xcode em Signing & Capabilities.
  3. BrazeDelegate: Implemente braze(_:shouldOpenURL:) para encaminhar os links do Branch para o SDK do Branch, em vez de permitir que a Braze os processe diretamente.
  4. Encaminhar links universais: Defina configuration.forwardUniversalLinks = true na configuração do SDK da Braze.

Para detalhes de implementação e orientações sobre depuração, consulte Branch para deep linking.

New Stuff!