¿Cómo podemos ayudarte?

integración de mParticle con AppsFlyer

  • Actualización

mParticle, un partner integrado de AppsFlyer, recopila datos de clientes y los envía a diferentes plataformas de análisis, marketing y almacenamiento de datos.

Importante:

Algunas fuentes de medios restringen el intercambio de datos con terceros. Por lo tanto, los postbacks para eventos restringidos no se enviarán a este partner, independientemente de la selección configurada para enviar postbacks.

Integraciones de eventos

El objetivo de este documento es proporcionarte detalles sobre cómo activar datos de eventos de mParticle para AppsFlyer.

1. los clientes de mParticle deben integrar el kit de AppsFlyer en su aplicación. El SDK de mParticle inicializará el SDK de AppsFlyer y también reenviará todos los eventos del ciclo de vida necesarios al SDK de AppsFlyer.

2. Consulta los repositorios de GitHub de los SDK de iOS y Android para obtener información detallada sobre cómo configurar el kit de AppsFlyer con el SDK de mParticle en tu app.

Configura la integración de eventos de AppsFlyer

1. En el Dashboard de mParticle (https://app.mparticle.com), selecciona tu App (también llamada Workspace)

2. Haz clic en Directory en la navegación izquierda

3. Haz clic en el mosaico de AppsFlyer para ver los detalles de la integración, que incluyen información como Categorías, plataformas disponibles, versiones mínimas del SDK de mParticle (si las hay), tipos de datos, ID de usuario, ID de dispositivo, eventos disponibles y configuraciones disponibles.

Mosaico de AppsFlyer en el directorio de mParticle

4. Haz clic en Add AppsFlyer to Setup.

Se abre la ventana Add to Setup:

Ventana Add to Setup de mParticle

5. Selecciona el tipo de integración de eventos de salida y haz clic en Add to Setup para abrir la pantalla Event Configuration Setup, donde puedes continuar el proceso de configuración.

Pantalla mParticle Event Configuration Setup

6. Introduce los ajustes de configuración de AppsFlyer y haz clic en Save:

  • Nombre de la configuración
  • Usa la misma configuración para desarrollo y producción
  • Dev Key
  • La configuración que acabas de crear se muestra en el grupo predeterminado de AppsFlyer
Configuración de AppsFlyer mostrada en el grupo predeterminado de AppsFlyer

El siguiente paso es establecer una conexión entre tus plataformas de entrada y la configuración de eventos de salida de AppsFlyer.

7. Haz clic en Conexiones.

8. Selecciona la entrada (iOS en este ejemplo) y, a continuación, haz clic en Connect Output.

9. Selecciona el mosaico de AppsFlyer y, a continuación, selecciona la configuración de AppsFlyer creada anteriormente.

10. Introduce la configuración de la conexión de AppsFlyer:
ID de la app de Apple (introduce solo el número y no el prefijo del ID. Por ejemplo, si el ID de tu app es id123456789, introduce 123456789)

Pantalla de configuración de la conexión de AppsFlyer

11. Haz clic en Agregar conexión.

AppsFlyer ahora se muestra como una salida conectada. Puede que haya más opciones disponibles, como asignaciones personalizadas. Consulta la documentación de mParticle para obtener más información.

AppsFlyer mostrado como una salida conectada

Integraciones de feeds

Esta sección te ayuda a entender cómo conectar un feed de datos de AppsFlyer con mParticle.

Puedes encontrar información general sobre la integración de AppsFlyer en https://docs.mparticle.com/integrations/appsflyer/feed/.

1. En el Dashboard de mParticle (https://app.mparticle.com), selecciona tu app (también llamada Workspace)

2. Haz clic en Directory desde la navegación de la izquierda

3. Haz clic en el mosaico de AppsFlyer para mostrar los detalles de la integración, que proporcionan información sobre la integración.

Mosaico de AppsFlyer en el Directory de mParticle
Detalles de la integración de AppsFlyer en mParticle

4. Haz clic en Añadir AppsFlyer a Setup.

5. Selecciona el tipo de integración del feed de entrada y haz clic en Añadir a Setup.

Ahora se te dirige a la pantalla de Setup, donde puedes continuar con el proceso de configuración.

6. Introduce los ajustes de configuración de AppsFlyer y haz clic en Crear:

  • Nombre de la configuración
  • Actuar como aplicación
Ajustes de configuración del feed de AppsFlyer

7. Completa la configuración en el dashboard de AppsFlyer con la información de autenticación proporcionada.

Configuración de autenticación del dashboard de AppsFlyer

Enlaces profundos diferidos

AppsFlyer te permite acceder a los datos de atribución de los usuarios en tiempo real directamente en el nivel del SDK. Te permite personalizar la página de aterrizaje que ve el usuario la primera vez que abre una aplicación recién instalada. Esto se denomina comúnmente enlaces profundos "diferidos".

Para obtener más información sobre Deferred deep linking, haz clic aquí.

Los datos de conversión de AppsFlyer contienen un parámetro llamado is_First_Launch. El valor de is_First_Launch es 'true' solo en el primer lanzamiento y 'false' en todos los lanzamientos posteriores. Puedes usar este parámetro para determinar en cada lanzamiento si la aplicación debe aplazar el deep link para el usuario o no.

af_dp → $deeplink_path

Ejemplo

$deeplink_path=product/Banana-Pet-Costume/dd67268672b345e491656c871af8aa29

af_dp incluye el esquema de URI codificado y la ruta

af_dp

%20jet%3A%2F%2Fproduct%2FBanana-Pet-Costume%2Fdd67268672b345e491656c871af8aa29

Android

Para Android: hazlo con Shared Preferences: aquí.

AttributionListener myListener = new AttributionListener() {
  @Override
  public void onResult(@NonNull AttributionResult attributionResult) {
   if (attributionResult.getServiceProviderId() == MParticle.ServiceProviders.APPSFLYER) {
    JSONObject attributionParams = attributionResult.getParameters();
    if (attributionParams != null && attributionParams.has(AppsFlyerKit.INSTALL_CONVERSION_RESULT)) {
     Log.d("Resultado de conversión", attributionParams.toString());
    } else if (attributionParams != null && attributionParams.has(AppsFlyerKit.APP_OPEN_ATTRIBUTION_RESULT)) {
     Log.d("Resultado de apertura de la aplicación", attributionParams.toString());
    }
   }
  }

  @Override
  public void onError(@NonNull AttributionError attributionError) {
   Log.d("Error de datos de atribución", attributionError.toString());
  }
 };

 MParticleOptions options = MParticleOptions.builder(this)
  .credentials("replaceWithAPIKey", "replace-withAPISecret")
  .attributionListener(myListener)
  .build();

 MParticle.start(options);
apps de iOS,

Para iOS: haz esto en UserDefaults: aquí

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
 MParticleOptions *options = [MParticleOptions optionsWithKey:@"<>" secret:@"<>"];
 options.onAttributionComplete = ^void (MPAttributionResult *_Nullable attributionResult, NSError * _Nullable error) {
  if (error) {
   NSLog(@"La obtención de atribución para kitCode=%@ ha fallado con el error=%@", error.userInfo[mParticleKitInstanceKey], error);
   return;
  }
  NSLog(@"La obtención de atribución para kitCode=%@ se ha completado con linkInfo: %@", attributionResult.kitCode, attributionResult.linkInfo);
 }
 [[MParticle sharedInstance] startWithOptions:options];
 return YES;
}

Casos de uso de AppsFlyer/mparticle

Caso de uso Destino de engagement Método del SDK de AppsFlyer Método del Kit mParticle-AF
Deferred Deep Linking apps de iOS, onConversionDataSuccess checkForDeferredDeepLinkWithCompletionHandler
enlaces universales apps de iOS, continueUserActivity continueUserActivity
Apertura de la aplicación apps de iOS, onAppOpenAttribution checkForDeferredDeepLinkWithCompletionHandler
Conexión profunda diferida (también conocido como deferred deep linking) Android onConversionDataSuccess checkForDeepLink
Enlaces de la aplicación Android Android <intent-filter android:autoVerify="true"> continueUserActivity
Apertura de la aplicación Android onAppOpenAttribution checkForDeepLink

Gestión de indicadores de usuario

AppsFlyer también te permite mostrar contenido personalizado o enviar a los usuarios existentes a ubicaciones específicas de la aplicación DESPUÉS del lanzamiento inicial. Cuando se aplica Deep Linking a usuarios existentes dentro de la aplicación, la aplicación se abre desde el método onOpenAttribution, que devuelve los datos de la URL de referencia.

 if let conversionData = params?[MPKitAppsFlyerConversionResultKey] as? [AnyHashable: Any], !alreadyLoggedAppsflyerConversionData {
   logAppsflyerConversionData(conversionData: conversionData)
   alreadyLoggedAppsflyerConversionData = true
   if let onelinkURL = (conversionData["af_dp"] as? String).flatMap(URL.init) {
    UIApplication.appDelegate._linkController.handle(onelinkURL, source: .appsflyer)
   }
  } else if let appOpenData = params?[MPKitAppsFlyerAppOpenResultKey] as? [AnyHashable: Any] {
   logAppsflyerAppOpenData(appOpenData: appOpenData as? [String: Any])
  }

AppsFlyer usa UserDefaults en iOS y Shared Preferences en Android para indicar si el usuario está abriendo la aplicación por primera vez y debe ser redirigido a la página correspondiente, o si la aplicación ya se ha abierto y el usuario ya ha sido dirigido a esa página. Para ello, el valor alreadyLoggedAppsflyerConversionData se lee y se escribe en UserDefaults/ SharedPreferences, para que no se tenga en cuenta el valor af_dp en el primer inicio.

Para obtener más información sobre cómo mostrar contenido personalizado en Deep Linking, haz clic aquí.

Activación de la medición de desinstalación de AppsFlyer en mParticle

La medición de desinstalación de AppsFlyer no se activa automáticamente con el kit SDK de mParticle-AppsFlyer. Para medir las desinstalaciones de la aplicación, llama directamente a los métodos de AppsFlyer siguiendo la documentación sobre la medición de desinstalación de AppsFlyer.

Para implementar la medición de desinstalación en iOS o Android: