Skip to content

Branch para la vinculación en profundidad

Branch es una plataforma de enlace móvil utilizada para adquirir, interactuar y medir a través de dispositivos, canales y plataformas, proporcionando una visión holística de los puntos de intervención del usuario.

Esta integración está mantenida por Branch.

Sobre la integración

La integración de Braze y Branch te permite ofrecer mejores experiencias a tus clientes, ya que te permite atribuir correctamente el inicio de su viaje de usuario y conectarlos a través de vínculos profundos a su ubicación prevista.

Integración

Sigue la guía de integración de SDK de Branch para poner en marcha tu integración de Branch. Consulta a continuación otros casos de uso.

Para admitir el envío de enlaces universales de iOS como vínculos profundos desde Braze:

Sigue la documentación de Branch para configurar los enlaces universales. Como parte de esta configuración, Branch aloja el archivo AASA en tu dominio de enlace de Branch (por ejemplo, yourapp.app.link) de forma automática.

Paso 2: Configurar los dominios asociados

En Xcode, ve al objetivo de tu aplicación > Signing & Capabilities y añade tu dominio de enlace de Branch en Associated Domains:

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

Si utilizas un dominio personalizado de Branch, añádelo también.

Establece forwardUniversalLinks en true en la configuración de tu SDK de Braze para que el SDK reenvíe los enlaces universales al AppDelegate de tu aplicación:

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];

Implementa BrazeDelegate para interceptar los enlaces de Branch antes de que Braze los gestione. Esto garantiza que Branch pueda procesar el enlace y realizar su propio enrutamiento:

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;
}

Sustituye yourdomain.com por tu dominio personalizado de Branch, si corresponde.

Vinculación en profundidad en el correo electrónico

Consulta la documentación sobre enlaces universales y enlaces de aplicación o consulta la documentación de Branch para configurar la vinculación en profundidad desde los correos electrónicos enviados a través de Braze.

La vinculación a números de teléfono (añadir tel a href) no es compatible con la aplicación de Gmail para iOS a menos que el usuario conceda permisos de llamada a la aplicación.

Dependiendo de tu ESP, puede ser necesaria una personalización adicional para admitir enlaces universales con seguimiento de clics. Esta información se describe en nuestro artículo específico. También puedes consultar las siguientes referencias para obtener más información:

Solución de problemas

Si los enlaces de Branch no funcionan como se espera desde las campañas de Braze, sigue estos pasos.

Abre el enlace de Branch desde la aplicación Notas en un dispositivo iOS físico. Si no abre tu aplicación:

  • El problema está en tu configuración de Branch o AASA, no en Braze.
  • Valida tu AASA de Branch en https://yourapp.app.link/.well-known/apple-app-site-association.
  • Comprueba que tu Bundle ID y Team ID coinciden en el dashboard de Branch.

Habilitar el registro dual

  1. Braze: Habilita el registro detallado y busca entradas Opening '<URL>':. Esto confirma que el SDK recibió el enlace.
  2. Branch: Habilita el modo de prueba de Branch y comprueba en el dashboard de Branch los eventos de clic en enlaces.
  3. Compara: Si Braze registra el enlace pero Branch no detecta un clic, es probable que la lógica de enrutamiento de BrazeDelegate no esté interceptando el enlace correctamente. Comprueba que la coincidencia de dominio en shouldOpenURL incluya tu dominio de Branch.

Problemas comunes

Para más escenarios de solución de problemas de vinculación en profundidad, consulta Solución de problemas de vinculación en profundidad.

New Stuff!