Un deep link è un link che indirizza non solo alla tua app, ma a un contenuto specifico al suo interno. Per maggiori informazioni, consulta Aggiunta di deep link all'inserzione per l'app.
Puoi supportare i deep link utilizzando i link universali o gli schemi URL personalizzati.
Prima di poter supportare i link universali nella tua app mobile per iOS, devi soddisfare i seguenti prerequisiti:
Seguire le linee guida di Apple per consentire alle app e ai siti web di collegarsi ai tuoi contenuti, tra cui:
Aggiornare il tuo sito web in modo da supportare i domini associati
Aggiornare la tua app in modo da supportare i link universali
Dopo aver soddisfatto i prerequisiti, puoi aggiungere il codice alla tua app per supportare la misurazione aggregata degli eventi. Per maggiori informazioni, consulta Misurazione aggregata degli eventi.
Nella Dashboard gestione app, aggiungi le informazioni sui deep link per la tua app. Accedi a Dashboard > Impostazioni > iOS.
://
. Ad esempio, se lo schema URL è mytravelapp://
, inserisci mytravelapp
. Nota: questo requisito non si applica alle versioni di iOS precedenti a iOS 16.APP_STORE_ID
.Il deferred deep linking consente di indirizzare le persone a una visualizzazione personalizzata dopo l'installazione dell'app tramite l'App Store.
Il deferred deep linking è necessario se targetizzi persone che non hanno ancora installato l'app. Se la targetizzazione riguarda solo chi ha già installato l'app, non devi aggiungere il deferred deep linking.
A seguito degli aggiornamenti di iOS 14, il deferred deep linking non è più supportato per l'endpoint POST /{ad-id}
per le campagne SKAdNetwork.
L'SDK di Facebook per iOS comprende il prodotto App Links, che abilita il supporto del deferred deep linking nella tua app. Oltre all'implementazione dei deep link, aggiungi il seguente codice per la gestione dei deferred deep link.
Se segui la conformità al GDPR come da Conformità al GDPR in Best practice per l'SDK di FB per la conformità al GDPR, innanzitutto riabilita l'inizializzazione automatica dell'SDK dopo aver ottenuto il consenso di un utente finale prima di recuperare un deferred link.
Codice per gestire i deferred link:
#import <FBSDKCoreKit/FBSDKCoreKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions[UIApplicationLaunchOptionsURLKey] == nil) { [FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) { if (error) { NSLog(@"Received error while fetching deferred app link %@", error); } if (url) { [[UIApplication sharedApplication] openURL:url]; } }]; } return YES; }
Codice per riabilitare l'inizializzazione automatica dell'SDK, se necessario:
#import <FBSDKCoreKit/FBSDKCoreKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions[UIApplicationLaunchOptionsURLKey] == nil) { // Get user consent [FBSDKSettings setAutoInitEnabled:YES]; [FBSDKApplicationDelegate initializeSDK:nil]; [FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) { if (error) { NSLog(@"Received error while fetching deferred app link %@", error); } if (url) { [[UIApplication sharedApplication] openURL:url]; } }]; } return YES; }
Codice per la gestione dei deferred link:
import FacebookCore func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { AppLinkUtility.fetchDeferredAppLink { (url, error) in if let error = error { print("Received error while fetching deferred app link %@", error) } if let url = url { if #available(iOS 10, *) { UIApplication.shared.open(url, options: [:], completionHandler: nil) } else { UIApplication.shared.openURL(url) } } } return true; }
Codice per riabilitare l'inizializzazione automatica dell'SDK, se necessario:
import FacebookCore func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { // Get user consent Settings.isAutoInitEnabled = true ApplicationDelegate.initializeSDK(nil) AppLinkUtility.fetchDeferredAppLink { (url, error) in if let error = error { print("Received error while fetching deferred app link %@", error) } if let url = url { if #available(iOS 10, *) { UIApplication.shared.open(url, options: [:], completionHandler: nil) } else { UIApplication.shared.openURL(url) } } } return true; }
Puoi verificare la configurazione dell'SDK di Facebook e del deep link all'interno del nostro strumento di assistenza sulle inserzioni per le app nella sezione dedicata agli strumenti e all'assistenza. È consigliabile verificare la configurazione prima di pubblicare inserzioni con deep link.
Verifica della configurazione del deep linkSe hai selezionato Installazioni dell'app come obiettivo, puoi aggiungere un deferred deep link.
In Gestione inserzioni, seleziona Nuovo gruppo di inserzioni e scorri fino a Creatività dell'inserzione. Aggiungi un deep link o un URL con metadati di App Links di Facebook implementati per portare gli utenti in un luogo specifico all'interno dell'app dopo l'installazione.