Supporto di iOS 14

Con iOS 14.5, Apple richiede agli sviluppatori di ricevere l'autorizzazione dell'utente tramite il framework App Tracking Transparency per monitorarli o accedere ai loro identificatore pubblicità del dispositivo (IDFA). Consulta Privacy degli utenti e utilizzo dei dati di Apple e App Tracking Transparency di Apple documentazione per ulteriori dettagli.

Prodotti Firebase interessati

Gli SDK Firebase non accedono all'IDFA, anche se alcuni hanno integrazioni con Google Analytics che potrebbero comportare l'accesso all'IDFA.

La tabella seguente elenca i prodotti Firebase disponibili sulle piattaforme Apple e descrive in che modo la funzionalità di ciascun prodotto viene influenzata se l'IDFA non viene accessibili.

Prodotto Impatto se l'IDFA non è accessibile
A/B Testing Alcuni dati di targeting (ad esempio i dati demografici) nell'integrazione di A/B Testing con Google Analytics deriva dall'IDFA. Nelle app senza l'accesso all'IDFA, questo targeting non è disponibile.
App Check Nessun impatto
App Distribution Nessun impatto
Authentication Nessun impatto su Authentication e sui provider Authentication proprietari, ad esempio Accedi con Google e Autenticazione telefonica.
Crashlytics Nessun impatto. Integrazione di Crashlytics con Google Analytics che fornisce dati sugli arresti anomali in tempo reale e breadcrumb non dipende dal IDFA.
Dynamic Links Nessun impatto sulla funzionalità di apertura dei link. Se utilizzato con Google Analytics, l'attribuzione per gli eventi di conversione tramite link è non disponibile.
Cloud Firestore Nessun impatto
Cloud Functions Nessun impatto
In-App Messaging Nessun impatto
Firebase installazione Nessun impatto
ID istanza Nessun impatto
Cloud Messaging Se utilizzata con Google Analytics, Google Analytics registra automaticamente alcuni eventi di conversione correlati a FCM. Attribuzione per questi eventi richiede l'accesso IDFA.
Firebase ML Nessun impatto
Performance Monitoring Nessun impatto
Remote Config Se utilizzato con Google Analytics, Remote Config non consente proprietà utente create automaticamente per il targeting senza accesso IDFA.
Realtime Database Nessun impatto
Cloud Storage Nessun impatto
Vertex AI in Firebase Nessun impatto

Integrazioni Firebase interessate

La tabella seguente elenca i prodotti integrati con Firebase interessati se l'IDFA è non accessibile.

Prodotto Impatto se l'IDFA non è accessibile
Google Analytics Logging degli eventi, report sugli eventi e misurazione delle conversioni di Analytics non sono interessati, mentre l'attribuzione ne risente se l'IDFA non è accessibile. Per scoprire di più sulla risposta di Google a iOS 14, consulta le nostre post del blog.

Richiesta dell'autorizzazione di monitoraggio delle app su iOS 14

Se vuoi che la tua applicazione Apple sia in grado di accedere all'IDFA, puoi aggiungere Il framework App Tracking Transparency di Apple nella tua app e richiedere l'autorizzazione per monitorare o accedere ai tuoi utenti IDFA.

Molte applicazioni scelgono di presentare una schermata introduttiva o esplicativa prima di chiedere l'autorizzazione. La schermata esplicativa ti consente di offrire agli utenti contesto sul modo in cui la tua app utilizza l'IDFA prima di richiedere l'accesso.

Se sei un AdMob o un publisher di app Ad Manager, valuta la possibilità di utilizzare Funding Choices che gestisce l'ottenimento del consenso per la pubblicazione della pubblicità personalizzata come consenso per monitorare l'utente automaticamente in base alle linee guida di Apple. Consulta le AdMob Pagina Consenso per i messaggi per gli utenti per ulteriori dettagli.

La seguente guida fornisce una soluzione Firebase In-App Messaging per creare e mostrare una schermata esplicativa prima di richiedere l'accesso al monitoraggio tramite Trasparenza sul tracciamento delle app.

Aggiungere In-App Messaging all'app

Segui le istruzioni per aggiungi In-App Messaging alla tua applicazione Apple.

Gestire la chiusura dei messaggi in-app

Innanzitutto, evita di visualizzare la schermata esplicativa su dispositivi che non possono presentare finestra di dialogo per il consenso, ad esempio dispositivi con iOS 13. Assicurati che questo codice venga eseguito immediatamente dopo FirebaseApp.configure().

Swift

if NSClassFromString("ATTrackingManager") == nil {
  // Avoid showing the App Tracking Transparency explainer if the
  // framework is not linked.
  InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}

Implementa il InAppMessagingDisplayDelegate per gestire gli eventi quando l'utente ignora la schermata esplicativa. Se l'utente tocca OK, visualizza la richiesta di sistema tramite App Tracking Transparency il modello di machine learning.

Swift

// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self

func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
                    with action: InAppMessagingAction) {
  switch action.actionText {
  case "OK":
    ATTrackingManager.requestTrackingAuthorization { status in
      switch status {
      case .authorized:
        // Optionally, log an event when the user accepts.
        Analytics.logEvent("tracking_authorized", parameters: nil)
      case _:
        // Optionally, log an event here with the rejected value.
      }
    }
  case _:
    // do nothing
  }
}

Crea una campagna In-App Messaging

Una volta inserito il codice nell'applicazione, crea un messaggio in-app nella Console Firebase.

  1. Nella console Firebase, crea una nuova campagna In-App Messaging.
  2. Compila i messaggi in-app con i contenuti desiderati e imposta il messaggio. da attivare all'evento app_launch.
  3. Nella sezione Targeting, assicurati che la campagna abbia come target solo la versione più recente della tua app e le versioni successive.

Puoi personalizzare l'aspetto della schermata informativa seguendo le istruzioni riportate nella documentazione di In-App Messaging.

(Facoltativo) Eseguire test A/B di diverse schermate esplicative

In-App Messaging è integrata con Firebase A/B Testing, che puoi utilizzare per l'esperimento con schermate esplicative diverse.

Firebase A/B Testing crea automaticamente i gruppi sperimentali e ti aiuta visualizzare in che modo gli utenti interagiscono con le diverse varianti dell'applicazione.

Registrare le autorizzazioni di monitoraggio delle app

Se non hai registrato un evento Google Analytics durante la gestione del monitoraggio delle app risposta alle autorizzazioni, è necessario per misurare le modifiche il tasso di risposta durante l'esecuzione di un esperimento A/B.

Swift

ATTrackingManager.requestTrackingAuthorization { status in
  switch status {
  case .authorized:
    // Optionally, log an event when the user accepts.
    Analytics.logEvent("tracking_authorized", parameters: nil)
  case _:
    // Optionally, log an event here with the rejected value.
  }
}

Creare un nuovo evento di conversione

Nella Sezione Analytics della console Firebase, vai al menu Conversioni e aggiungi un nuovo evento di conversione con lo stesso nome dell'evento registrato con il codice di esempio in alto.

Crea un nuovo esperimento

Nella console Menu In-App Messaging, fai clic su Nuovo esperimento e poi segui le istruzioni schermate.

  • Nella sezione Targeting, assicurati che la campagna abbia come target solo la versione più recente della tua app e le versioni successive.
  • Nella sezione Obiettivi, seleziona l'evento di conversione che hai creato con la il codice di esempio riportato sopra ed eventuali altre metriche che vuoi monitorare.

Una volta pubblicato, l'esperimento dovrà raccogliere i dati per alcuni tempo prima di poter produrre risultati definitivi.

Leggi Documentazione di Firebase A/B Testing per informazioni su come monitorare un esperimento e implementare e la variante corrispondente.