Tracciamento dei collegamenti profondi differiti (deferred deep link) di terze parti

Usa l'SDK per iOS per implementare il tracciamento dei collegamenti profondi differiti (deferred deep link) di terze parti.

Collegamenti diretti classici dell'SDK di Adobe Mobile

L'SDK di Adobe Mobile attualmente supporta il deep linking, o creazione di collegamenti diretti, in cui lo sviluppatore di app deve chiamare l'API trackAdobeDeepLink e passare l'URL del collegamento diretto, che è l'URL di creazione dell'impronta digitale generato in Adobe Mobile Services durante la configurazione. L'SDK invia un segnale ping al generatore dell'impronta digitale per ottenere i dati di acquisizione e li aggiunge ai dati contestuali delle chiamate di analisi installazione/avvio, come parte del ciclo di vita. Inoltre, aggiunge i dati del collegamento diretto dai parametri dell'URL di deep linking. Per ulteriori informazioni sul deep linking, vedi Tracciamento dei collegamenti profondi (deep link).

Collegamenti diretti di Facebook

Il creatore di un'inserzione può creare un'inserzione su Facebook come collegamento profondo. Quando l'utente fa clic sull'inserzione su Facebook, passa direttamente alle informazioni di interesse nell'app. Il collegamento profondo non è un URL di generazione di impronta digitale. Tuttavia, durante la configurazione dell'annuncio, è disponibile l'opzione per fornire un URL di collegamento profondo di terze parti. Lo sviluppatore di app che utilizza Experience Cloud Mobile SDK e servizi deve immettere in questo campo l’URL di generazione di impronte digitali configurato da Mobile Services. Se è tutto impostato correttamente, l'SDK di Facebook passa questo URL all'applicazione quando l'app viene installata o avviata.

Configurare gli SDK

  1. Imposta l'SDK di Facebook.

    Per ulteriori informazioni vedi quanto segue:

  2. Per impostare l’SDK, chiama trackAdobeDeepLink e passa l’URL agli SDK:

    - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation 
    { 
      [ADBMobile trackAdobeDeepLink:url]; 
      return YES; 
    }
    
    SUGGERIMENTO

    Accertati che l'URL del collegamento diretto disponga di una chiave denominata a.deeplink.id. Se nell'URL manca il parametro a.deeplink.id, nessun parametro URL potrà essere aggiunto ai dati.

Se l'applicazione è impostata come descritto qui sopra, la versione SDK di Adobe Mobile corrente funzionerà correttamente e i dati del collegamento profondo verranno aggiunti alle chiamate di installazione o avvio.

Abilitare la funzione in un’applicazione di esempio

  1. Registra uno schema URL.

    Assicurati di registrare uno schema URL, corrispondente all'URL di collegamento profondo.

    <key>CFBundleURLTypes</key> 
        <array> 
            <dict> 
                <key>CFBundleURLSchemes</key> 
                <array> 
                    <string>sampleapptest</string> 
                </array> 
            </dict> 
        </array>
    
  2. Collegare gli SDK di Facebook.

    Risorse Facebook

  3. Modifica AppDelegate.

    1. Importa le intestazioni.

      /************************************************************************* 
      ADOBE SYSTEMS INCORPORATED 
      Copyright 2015 Adobe Systems Incorporated 
      All Rights Reserved. 
      NOTICE:  Adobe permits you to use, modify, and distribute this file in accordance with the 
      terms of the Adobe license agreement accompanying it.  If you have received this file from a 
      source other than Adobe, then your use, modification, or distribution of it requires the prior 
      written permission of Adobe. 
      
      **************************************************************************/ 
      
      #import "AppDelegate.h" 
      #import "GalleryViewController.h" 
      #import "SimpleTrackingController.h" 
      #import "PostbackController.h" 
      #import "InAppMessageViewController.h" 
      #import "LifetimeValueController.h" 
      #import "LocationTargetingController.h" 
      #import "MediaViewController.h" 
      #import "TimedActionController.h"
      
      // Uncomment after including the facebook sdks. 
      @import FBSDKCoreKit; 
      @import Bolts;
      
    2. Aggiungi un handle per il deferred deep linking.

      - (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
          /* 
           * Adobe Tracking - Analytics 
           * 
           * turn on debug logging for the ADBMobile SDK 
           * enable the collection of lifecycle data 
           */ 
              if (launchOptions[UIApplicationLaunchOptionsURLKey] == nil) { 
                  if (NSClassFromString(@"FBSDKAppLinkUtility") != nil) 
                  { 
                      [NSClassFromString(@"FBSDKAppLinkUtility") performSelector:@selector(fetchDeferredAppLink:) withObject:^(NSURL *url, NSError *error) { 
                          if (error) { 
                              NSLog(@"Received error while fetching deferred app link %@", error); 
                          } 
                          if (url) { 
                              [[UIApplication sharedApplication] openURL:url]; 
                          } 
                      }]; 
                  } 
          } 
          ..... 
          ..... 
          return YES; 
      }
      
    3. Chiama l'API trackAdobeDeepLink e passa l'URL del collegamento diretto agli SDK.

      - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *, id> *)options { 
          [self handleDeepLink:url]; 
      
          return YES; 
      }
      

In questa pagina