Con iOS 14.5, Apple richiede agli sviluppatori di ricevere l'autorizzazione dell'utente tramite il framework App Tracking Transparency per tracciarli o accedere all'identificatore pubblicitario (IDFA) del proprio dispositivo. Consulta la documentazione sulla privacy e l'utilizzo dei dati degli utenti di Apple e sulla trasparenza del monitoraggio delle app di Apple per ulteriori dettagli.
Prodotti Firebase interessati
Gli SDK Firebase non accedono all'IDFA, sebbene alcuni abbiano integrazioni con Google Analytics che potrebbero comportare l'accesso all'IDFA.
La tabella seguente elenca i prodotti Firebase disponibili sulle piattaforme Apple e descrive l'impatto sulla funzionalità di ciascun prodotto se l'IDFA non è accessibile.
Prodotto | Impatto se IDFA non è accessibile |
---|---|
Test A/B | Alcuni dati di targeting (come i dati demografici) nell'integrazione del test A/B con Google Analytics derivano dall'IDFA. Nelle app senza accesso all'IDFA, questo targeting non è disponibile. |
Controllo dell'app | Nessun impatto |
Distribuzione dell'app | Nessun impatto |
Autenticazione | Nessun impatto sull'autenticazione e sui provider di autenticazione proprietari, come l'accesso con Google e l'autenticazione telefonica. |
Crashlytics | Nessun impatto. L'integrazione di Crashlytics con Google Analytics che fornisce dati sugli arresti anomali in tempo reale e breadcrumb non dipende dall'IDFA. |
Collegamenti dinamici | Nessun impatto per la funzionalità di apertura dei collegamenti. Se utilizzato con Google Analytics, l'attribuzione per gli eventi di conversione dei link non è disponibile. |
CloudFirestore | Nessun impatto |
Funzioni cloud | Nessun impatto |
Messaggi in-app | Nessun impatto |
Installazioni Firebase | Nessun impatto |
ID istanza | Nessun impatto |
Messaggi sulla nuvola | Se utilizzato con Google Analytics, Google Analytics registrerà automaticamente alcuni eventi di conversione relativi a FCM. L'attribuzione per questi eventi richiede l'accesso IDFA. |
Base di fuoco ML | Nessun impatto |
Monitoraggio delle prestazioni | Nessun impatto |
Configurazione remota | Se utilizzato con Google Analytics, Remote Config non consente proprietà utente create automaticamente per il targeting senza accesso IDFA. |
Database in tempo reale | Nessun impatto |
Archiviazione cloud | Nessun impatto |
Integrazioni Firebase interessate
La tabella seguente elenca i prodotti integrati Firebase che sono interessati se IDFA non è accessibile.
Prodotto | Impatto se IDFA non è accessibile |
---|---|
statistiche di Google | La registrazione degli eventi di Analytics, la segnalazione degli eventi e la misurazione delle conversioni non sono interessate, ma l'attribuzione ne risente se l'IDFA non è accessibile. Per ulteriori informazioni sulla risposta di Google a iOS 14, consulta il nostro post sul blog . |
Richiesta dell'autorizzazione al monitoraggio delle app su iOS 14
Se desideri che la tua applicazione Apple sia in grado di accedere all'IDFA, puoi aggiungere il framework App Tracking Transparency di Apple alla tua app e richiedere l'autorizzazione per monitorare o accedere all'IDFA dei tuoi utenti.
Molte applicazioni scelgono di presentare una schermata di riscaldamento o esplicativa prima di chiedere l'autorizzazione. La schermata esplicativa ti consente di fornire agli utenti più contesto su come la tua app utilizza l'IDFA prima di richiedere l'accesso.
Se sei un publisher di app AdMob o Ad Manager, considera l'utilizzo di Funding Choices , che gestisce l'ottenimento del consenso per la pubblicazione di annunci pubblicitari personalizzati e il consenso per il tracciamento automatico dell'utente in base alle linee guida di Apple. Per ulteriori dettagli, consulta la pagina Consenso di AdMob con i messaggi degli utenti .
La seguente guida fornisce una soluzione che utilizza la messaggistica in-app di Firebase per creare e visualizzare una schermata esplicativa prima di richiedere l'accesso al monitoraggio tramite App Tracking Transparency.
Aggiungi messaggi in-app alla tua app
Segui le istruzioni per aggiungere la messaggistica in-app alla tua applicazione Apple .
Gestisci l'eliminazione dei messaggi in-app
Innanzitutto, evita di visualizzare la schermata esplicativa sui dispositivi che non possono presentare la finestra di dialogo per il consenso, ad esempio i dispositivi che eseguono iOS 13. Assicurati che questo codice venga eseguito immediatamente dopo FirebaseApp.configure()
.
Rapido
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
Implementa il protocollo InAppMessagingDisplayDelegate
per gestire gli eventi quando l'utente chiude la schermata esplicativa. Se l'utente tocca OK, visualizza il prompt di sistema tramite il framework App Tracking Transparency.
Rapido
// 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 di messaggistica in-app
Una volta inserito il codice nella tua applicazione, crea un messaggio in-app nella console Firebase.
- Nella console Firebase , crea una nuova campagna di messaggistica in-app.
- Compila i messaggi in-app con il contenuto desiderato e imposta il messaggio in modo che si attivi sull'evento
app_launch
. - Nella sezione Targeting , assicurati che la campagna abbia come target solo la versione più recente della tua app e successive.
Puoi personalizzare l'aspetto della schermata esplicativa seguendo le istruzioni nella documentazione della messaggistica in-app .
Facoltativo: prova A/B su diverse schermate esplicative
La messaggistica in-app ha un'integrazione integrata con Firebase A/B Testing , che puoi utilizzare per sperimentare diverse schermate esplicative.
Firebase A/B Testing crea automaticamente gruppi di esperimenti e ti aiuta a visualizzare come gli utenti interagiscono con le diverse varianti della tua applicazione.
Registra le autorizzazioni di tracciamento delle app
Se non hai registrato un evento di Google Analytics durante la gestione della risposta alle autorizzazioni di tracciamento dell'app, dovrai farlo per misurare le variazioni del tasso di risposta durante l'esecuzione di un esperimento A/B.
Rapido
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.
}
}
Crea un nuovo evento di conversione
Nella sezione Analisi della console Firebase, vai al menu Conversioni , quindi aggiungi un nuovo evento di conversione con lo stesso nome dell'evento registrato con il codice di esempio riportato sopra.
Crea un nuovo esperimento
Nel menu Messaggi in-app della console , fai clic su Nuovo esperimento , quindi segui le istruzioni nelle schermate visualizzate.
- Nella sezione Targeting , assicurati che la campagna abbia come target solo la versione più recente della tua app e successive.
- Nella sezione Obiettivi , seleziona l'evento di conversione che hai creato con il codice di esempio riportato sopra e qualsiasi altra metrica che desideri monitorare.
Dopo aver pubblicato l'esperimento, sarà necessario raccogliere dati per un po' di tempo prima di poter produrre risultati conclusivi.
Leggi la documentazione di Firebase A/B Testing per informazioni su come monitorare un esperimento e implementare una variante di successo.