Guida introduttiva ad App Events (iOS)

Questa guida mostra come aggiungere App Events alla tua app nuova o esistente integrando l'SDK di Facebook e registrando gli eventi.

Sono state apportate modifiche all'SDK di Facebook per iOS. Ti consigliamo di eseguire l'aggiornamento alla nuova versione dell'SDK di Facebook per iOS. Consulta la sezione relativa al consenso del dispositivo per maggiori informazioni sulle modifiche apportate.

Prima di iniziare

Ecco cosa ti servirà:

Passaggio 1: Configurare l'app Facebook

Vai alla Dashboard gestione app, clicca su Le mie app e crea una nuova app se non ne hai ancora una. Accedi a Impostazioni > Di base per visualizzare la scheda Dettagli dell'app contenente l'ID app, la chiave segreta e altre informazioni sulla tua app.

Scorri fino al fondo della pagina, quindi clicca su Aggiungi piattaforma. Scegli iOS, aggiungi i dettagli dell'app e salva le modifiche.

Configura l'app per la pubblicità aggiungendo i seguenti dettagli:

  • Domini app: fornisci l'URL dell'App Store Apple della tua app.
  • URL dell'Informativa sulla privacy: indica l'URL che punta all'Informativa sulla privacy. Obbligatorio per rendere pubblica la tua app.
  • URL delle Condizioni d'uso: indica l'URL che punta alle Condizioni d'uso.
  • Piattaforma: scorri fino alla fine della scheda Impostazioni per aggiungere la piattaforma iOS.

Per scoprire di più sulla procedura per aggiungere dettagli all'app, come un'icona o una categoria, visita la documentazione relativa allo sviluppo di app.

Passaggio 2: collegamento dei tuoi account pubblicitari e business

Per pubblicare annunci e misurare le installazioni in Gestione inserzioni, associa almeno un account pubblicitario e un account business alla tua app.

  1. Nella Dashboard gestione app, fai clic su Impostazioni > Avanzate.
  2. In ID account pubblicitari autorizzati, aggiungi gli ID dei tuoi account pubblicitari. Puoi ottenere gli ID dei tuoi account pubblicitari da Gestione inserzioni.
  3. Nella scheda Account pubblicitari, clicca su Inizia e segui le istruzioni per collegare l'app a un account business.

Passaggio 3: configurazione dell'ambiente di sviluppo

La procedura seguente utilizza Swift Package Manager per configurare l'ambiente di sviluppo in Xcode.

  1. In Xcode, clicca su File > Add Packages... (File > Aggiungi pacchetti...).
  2. Nel campo di ricerca visualizzato, immetti l'URL del repository: https://github.com/facebook/facebook-ios-sdk.
  3. In Dependency Rule (Regola di dipendenza), seleziona Up to Next Major Version (Fino alla successiva versione principale) e inserisci una versione recente. La versione più recente è riportata nel sito web https://github.com/facebook/facebook-ios-sdk/releases/
  4. Scegli le librerie che hai intenzione di utilizzare e i target a cui desideri aggiungerle.
  5. Clicca su Add Package (Aggiungi pacchetto) per il completamento della configurazione.

Passaggio 4: registrazione e configurazione dell'app con Facebook

Aggiungi l'identificativo del bundle e abilita la funzione Accesso singolo per la tua app.

Dovresti visualizzare l'identificatore del bundle (ID bundle) nella casella seguente. Se la casella è vuota, trova l'identificatore del bundle nel target dell'app per iOS del tuo progetto Xcode e incollalo nella casella seguente.
ID bundle
In seguito, potrai modificare l'identificatore del bundle nella sezione iOS della pagina delle impostazioni.
Abilitazione dell'accesso singolo
Abilita l'accesso singolo per la tua app impostando l'accesso singolo qui sotto su Sì.
Accesso singolo Avvio dalle notifiche di iOS

Passaggio 5: configurazione del progetto

Configura il file Info.plist con uno snippet XML contenente i dati sulla tua app.

Dopo aver integrato Facebook Login, alcuni eventi nell'app vengono registrati e raccolti automaticamente per Gestione eventi, a meno che tu non disabiliti la registrazione automatica degli eventi nell'app. Per maggiori dettagli sul tipo di informazioni raccolte e su come disabilitare la registrazione automatica degli eventi nell'app, consulta Registrazione automatica degli eventi nell'app.

  1. Clicca con il tasto destro su Info.plist e scegli Apri come ▸ Codice sorgente.
  2. Copia e incolla lo snippet XML seguente nel corpo del file (<dict>...</dict>).
    <key>CFBundleURLTypes</key>
    <array>
      <dict>
      <key>CFBundleURLSchemes</key>
      <array>
        <string>fbAPP-ID</string>
      </array>
      </dict>
    </array>
    <key>FacebookAppID</key>
    <string>APP-ID</string>
    <key>FacebookClientToken</key>
    <string>CLIENT-TOKEN</string>
    <key>FacebookDisplayName</key>
    <string>APP-NAME</string>
  3. In <array><string> nel codice [CFBundleURLSchemes], sostituisci APP-ID con l'ID della tua app.
  4. In <string> nel codice FacebookAppID, sostituisci APP-ID con l'ID della tua app.
  5. In <string> nel codice FacebookClientToken, sostituisci CLIENT-TOKEN con il valore riportato in Impostazioni > Avanzate > Token client nella Dashboard gestione app.
  6. In <string> nel codice FacebookDisplayName, sostituisci APP-NAME con il nome della tua app.
  7. Per usare una delle finestre di dialogo di Facebook (ad es. Accedi, Condividi, Inviti all'app ecc.) che consentono di eseguire il passaggio di un'app alle app Facebook, il file Info.plist della tua app deve includere anche quanto segue:
    <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>fbapi</string>
      <string>fb-messenger-share-api</string>
    </array>

Puoi impostare direttamente la raccolta automatica degli eventi nell'app su "true" o "false" aggiungendo FacebookAutoLogAppEventsEnabled come chiave in Info.plist.

Affinché l'accesso funzioni in applicazioni Mac Catalyst, il progetto dovrà includere la funzionalità Keychain Sharing.
  1. Seleziona il pulsante + Capability (+ Funzionalità) nella tab Signing & Capabilities (Firma e funzionalità) quando configuri il target dell'app.
  2. Trova e seleziona la funzionalità Keychain Sharing (Condivisione portachiavi).
  3. Assicurati che la funzionalità Keychain Sharing (Condivisione portachiavi) sia elencata per il target.

Passaggio 6: collegamento di app delegate e scene delegate

Sostituisci il codice nel metodo AppDelegate.swift con il seguente codice. Il codice inizializza l'SDK all'avvio dell'app e consente all'SDK di gestire gli accessi e la condivisione dall'app nativa di Facebook quando esegui un'azione di accesso o condivisione. In caso contrario, l'utente deve aver effettuato l'accesso a Facebook per utilizzare il browser in-app per accedere.
    
// AppDelegate.swift
import UIKit
import FacebookCore

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {    
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {          
        ApplicationDelegate.shared.application(
            application,
            didFinishLaunchingWithOptions: launchOptions
        )

        return true
    }
          
    func application(
        _ app: UIApplication,
        open url: URL,
        options: [UIApplication.OpenURLOptionsKey : Any] = [:]
    ) -> Bool {
        ApplicationDelegate.shared.application(
            app,
            open: url,
            sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String,
            annotation: options[UIApplication.OpenURLOptionsKey.annotation]
        )
    }  
}

iOS 13 ha spostato la funzionalità dell'URL di apertura a SceneDelegate. Se stai usando iOS 13, aggiungi il metodo seguente a SceneDelegate in modo che operazioni come l'accesso o la condivisione funzionino come previsto:
// SceneDelegate.swift
import FacebookCore
  ...
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
    guard let url = URLContexts.first?.url else {
        return
    }

    ApplicationDelegate.shared.application(
        UIApplication.shared,
        open: url,
        sourceApplication: nil,
        annotation: [UIApplication.OpenURLOptionsKey.annotation]
    )
}

Passaggio 7: aggiunta di App Events

Esistono tre modi per monitorare gli eventi nell'app:

App Store Connect per iOS 14

Gli eventi raccolti e inviati a Facebook dalla tua app potrebbero richiedere la divulgazione di questi tipi di dati nel questionario App Store Connect. È tua responsabilità assicurarti che ciò sia adeguatamente indicato nell'informativa sulla privacy della tua app. Consulta l'articolo Dettagli sulla privacy dell'App Store di Apple per maggiori informazioni sui tipi di dati che dovrai divulgare.

Eventi registrati automaticamente

Quando usi l'SDK di Facebook, determinati eventi nella tua app vengono registrati e raccolti automaticamente per Gestione eventi di Facebook a meno che non disabiliti la registrazione automatica degli eventi. Questi eventi sono pertinenti per tutti i casi d'uso: targetizzazione, misurazione e ottimizzazione.

Sono tre gli eventi chiave raccolti come parte della registrazione automatica degli eventi nell'app: Installazione dell'app, Avvio dell'app e Acquisto. Quando la registrazione automatica è abilitata, gli inserzionisti possono disabilitare questi eventi nonché altri eventi interni di Facebook come quelli delle impression relative all'accesso. Tuttavia, se hai disabilitato la registrazione automatica ma desideri comunque registrare eventi specifici, come gli eventi di installazione o acquisto, implementa manualmente la registrazione per questi eventi nella tua app.

EventoDettagli

Installazione dell'app

La prima volta che un nuovo utente attiva un'app o il primo avvio dell'app su uno specifico dispositivo.

Avvio dell'app

Quando una persona avvia la tua app, l'SDK di Facebook viene inizializzato e l'evento viene registrato. Tuttavia, se si verifica un secondo evento di avvio dell'app entro 60 secondi dal primo, il secondo evento non viene registrato.

Acquisto in-app

Quando viene completato un acquisto elaborato dall'App Store di Apple o da Google Play. Se usi altre piattaforme di pagamento, dovrai aggiungere il codice dell'evento di acquisto in modo manuale.

Report di interruzione dell'SDK di Facebook

(A uso esclusivo di Facebook)

Se l'app si arresta in modo anomalo a causa dell'SDK di Facebook, viene generato un report di interruzione inviato a Facebook al riavvio dell'app. Questo report non contiene dati degli utenti e aiuta Facebook a garantire la qualità e la stabilità dell'SDK. Per disattivare la registrazione di questo evento, disabilita gli eventi registrati automaticamente.

Acquisizione del consenso del dispositivo

A partire da iOS 14.5, dovrai impostare isAdvertiserTrackingEnabled e registrare ogni volta che concedi a un dispositivo l'autorizzazione per la condivisione dei dati con Facebook.

Se un dispositivo fornisce il consenso, imposta Settings.shared.isAdvertiserTrackingEnabled = true.

Se il dispositivo non acconsente al monitoraggio, imposta Settings.shared.isAdvertiserTrackingEnabled = false.

Disabilitazione degli eventi registrati automaticamente

Per disabilitare la registrazione automatica degli eventi, apri Info.plist dell'applicazione come codice in Xcode e aggiungi il seguente XML al dizionario delle proprietà:

<key>FacebookAutoLogAppEventsEnabled</key>
<false/>

In alcuni casi, è consigliabile ritardare la raccolta di eventi registrati automaticamente, ad esempio per ottenere il consenso dell'utente o adempiere a obblighi legali, invece di disabilitarla. In questo caso, imposta Settings.shared.isAutoLogAppEventsEnabled = true per abilitare nuovamente la registrazione automatica dopo aver ottenuto il consenso dell'utente finale.

Per sospendere di nuovo la raccolta per qualsiasi motivo, imposta Settings.shared.isAutoLogAppEventsEnabled = false.

Puoi anche disabilitare la registrazione automatica degli eventi di acquisto nell'app usando la Dashboard gestione app. Vai alla scheda iOS in Di base>Impostazioni e porta lo switch su No.

Disabilitazione della raccolta degli ID dell'inserzionista

Per disabilitare la raccolta di advertiser-id, apri .plist dell'applicazione come codice in Xcode e aggiungi il seguente XML al dizionario delle proprietà:

<key>FacebookAdvertiserIDCollectionEnabled</key>
<false/>

In alcuni casi, è consigliabile ritardare la raccolta di advertiser_id, ad esempio per ottenere il consenso dell'utente o adempiere a obblighi legali, invece di disabilitarla. In questo caso, imposta Settings.shared.isAdvertiserIDCollectionEnabled = true dopo aver ottenuto il consenso dell'utente finale.

Per sospendere la raccolta per qualsiasi motivo, imposta Settings.shared.isAdvertiserIDCollectionEnabled = false.

Registrare manualmente gli eventi

Per registrare un evento personalizzato, passa il nome dell'evento come AppEvents.Name.

AppEvents.shared.logEvent(AppEvents.Name("battledAnOrc"))

Parametri degli eventi

Facebook ha creato un insieme di utili parametri degli eventi per l'inclusione con eventi standard o con i tuoi eventi personalizzati. Puoi anche fornire i tuoi parametri.

Questi parametri predefiniti sono destinati a fornire una guida sugli schemi di registrazione comuni e potrebbero avere una forma più leggibile nei report e in altre interfacce utente. Registra la serie di parametri di cui desideri vedere i dettagli. La descrizione consigliata è fornita unicamente a scopo orientativo: puoi usare questi parametri per qualsiasi elemento applicabile alla tua app.

I parametri sono passati tramite un dizionario, in cui la chiave contiene il nome del parametro come AppEvents.ParameterName e il valore deve essere String o un numero (Int, Double ecc.).

Passaggio 8: test degli eventi

Lo Strumento di assistenza per le inserzioni sulle app ti consente di testare gli eventi nella tua app per verificarne l'invio a Facebook.

  1. Apri lo Strumento di assistenza sulle inserzioni per le app.
  2. In Seleziona un'app, scegli la tua app e seleziona Invia.
  3. Scorri fino in fondo e scegli Testa evento.
  4. Avvia la tua app e invia un evento. L'evento dovrebbe essere visualizzato sulla pagina.

Se hai intenzione di ottimizzare/monitorare i tuoi eventi nelle campagne SKAdNetwork, devi anche configurare correttamente la priorità degli eventi (nota anche come "conversioni") affinché Facebook possa ricevere correttamente le conversioni. Maggiori informazioni sono disponibili qui.

Per saperne di più

Esempi di app

Abbiamo creato alcuni esempi per diversi tipi di app in modo che tu possa vedere più facilmente come è possibile utilizzare gli eventi nell'app. Ciascuno degli esempi di app fornisce tutti i dettagli dei diversi eventi e dei parametri che possono essere acquisiti. Alla fine di ogni sezione è presente una tabella che elenca gli eventi consigliati e i parametri per ciascuna app. Se necessario, puoi creare eventi e parametri personali.