Skip to content

Branch para deep linking

A Branch é uma plataforma de vinculação móvel usada para adquirir, engajar e medir em dispositivos, canais e plataformas, fornecendo uma visão holística dos pontos de contato do usuário.

Essa integração é mantida pela Branch.

Sobre a integração

A integração entre a Braze e a Branch permite oferecer melhores experiências aos seus clientes, pois você pode atribuir adequadamente o início da jornada do usuário e conectá-los por deep links ao local pretendido.

Integração

Siga o guia de integração de SDK da Branch para configurar sua integração. Consulte os casos de uso adicionais a seguir.

Para dar suporte ao envio de links universais do iOS como deep links na Braze:

Siga a documentação da Branch para configurar links universais. Como parte dessa configuração, a Branch hospeda automaticamente o arquivo AASA no domínio do seu link Branch (por exemplo, yourapp.app.link).

Etapa 2: Configurar Associated Domains

No Xcode, acesse o target do seu app > Signing & Capabilities e adicione o domínio do seu link Branch em Associated Domains:

1
2
applinks:yourapp.app.link
applinks:yourapp-alternate.app.link

Se você usa um domínio Branch personalizado, adicione-o também.

Defina forwardUniversalLinks como true na configuração do SDK da Braze para que o SDK encaminhe links universais ao AppDelegate do seu app:

1
2
3
let configuration = Braze.Configuration(apiKey: "<BRAZE_API_KEY>", endpoint: "<BRAZE_ENDPOINT>")
configuration.forwardUniversalLinks = true
let braze = Braze(configuration: configuration)
1
2
3
4
BRZConfiguration *configuration = [[BRZConfiguration alloc] initWithApiKey:@"<BRAZE_API_KEY>"
                                                                  endpoint:@"<BRAZE_ENDPOINT>"];
configuration.forwardUniversalLinks = YES;
Braze *braze = [[Braze alloc] initWithConfiguration:configuration];

Implemente o BrazeDelegate para interceptar links da Branch antes que a Braze os processe. Isso garante que a Branch possa processar o link e realizar seu próprio roteamento:

1
2
3
4
5
6
7
8
9
10
func braze(_ braze: Braze, shouldOpenURL context: Braze.URLContext) -> Bool {
  if let host = context.url.host,
     host.contains("app.link") || host.contains("yourdomain.com") {
    // Let Branch handle this link
    Branch.getInstance.handleDeepLink(context.url)
    return false
  }
  // Let Braze handle all other links
  return true
}
1
2
3
4
5
6
7
8
- (BOOL)braze:(Braze *)braze shouldOpenURL:(BRZURLContext *)context {
  NSString *host = context.url.host;
  if (host && ([host containsString:@"app.link"] || [host containsString:@"yourdomain.com"])) {
    [[Branch getInstance] handleDeepLink:context.url];
    return NO;
  }
  return YES;
}

Substitua yourdomain.com pelo seu domínio Branch personalizado, se aplicável.

Deep linking em e-mails

Consulte a documentação sobre links universais e links de app ou veja a documentação da Branch para configurar deep linking a partir de e-mails enviados pela Braze.

O vínculo a números de telefone (anexando tel a href) não é compatível com o app Gmail para iOS, a menos que o usuário conceda permissões de chamada ao app.

Dependendo do seu ESP, pode ser necessária uma personalização adicional para dar suporte a links universais com rastreamento de cliques. Essas informações estão descritas em nosso artigo específico. Você também pode consultar as seguintes referências para saber mais:

Solução de problemas

Se os links da Branch não estiverem funcionando como esperado em Campaigns da Braze, siga estas etapas.

Abra o link da Branch pelo app Notas em um dispositivo iOS físico. Se ele não abrir seu app:

  • O problema está na configuração da Branch ou do AASA, não na Braze.
  • Valide o AASA da Branch em https://yourapp.app.link/.well-known/apple-app-site-association.
  • Verifique se o Bundle ID e o Team ID correspondem no dashboard da Branch.

Ativar registro duplo

  1. Braze: Ative o registro detalhado e procure por entradas Opening '<URL>':. Isso confirma que o SDK recebeu o link.
  2. Branch: Ative o modo de teste da Branch e verifique os eventos de clique no link no dashboard da Branch.
  3. Compare: Se a Braze registra o link, mas a Branch não detecta um clique, a lógica de roteamento do BrazeDelegate provavelmente não está interceptando o link corretamente. Verifique se a correspondência de domínio em shouldOpenURL inclui o domínio da Branch.

Problemas comuns

Para mais cenários de solução de problemas com deep linking, consulte Solução de problemas de deep linking.

New Stuff!