Prepararsi per i requisiti di divulgazione dei dati dell'App Store di Apple

Apple richiede agli sviluppatori che pubblicano app sull'App Store di divulgare determinate informazioni sull'utilizzo dei dati delle loro app. Apple ha annunciato che queste informative saranno necessarie per le nuove app e gli aggiornamenti delle app a partire dall'8 dicembre 2020.

Questo documento contiene i comportamenti della libreria della piattaforma Apple Firebase che potrebbero richiedere la divulgazione in base alle linee guida di Apple. Quando installi Firebase, prendi nota delle destinazioni di build installate nella tua app dal tuo gestore delle dipendenze preferito. Per ogni destinazione elencata dal tuo gestore delle dipendenze, rivedi la sezione corrispondente di questo documento per determinare quale raccolta di dati devi divulgare. Il numero di target di build Firebase che hai installato potrebbe essere maggiore del numero previsto poiché alcuni target di build Firebase hanno dipendenze temporanee da altri.

Se utilizzi funzionalità facoltative del prodotto che implicano dati aggiuntivi o partecipi a test di nuove funzionalità del prodotto che implicano dati aggiuntivi, assicurati di verificare se tali funzionalità o test richiedono la divulgazione di dati aggiuntivi.

Per garantire che le informative della tua app siano accurate, ti consigliamo di utilizzare sempre la versione più recente di ciascun SDK Firebase.

Agente utente Firebase

L' agente utente Firebase è un insieme di informazioni raccolte dalla maggior parte degli SDK Firebase e include quanto segue: dispositivo, sistema operativo, ID pacchetto app e piattaforma sviluppatore. L'agente utente non è mai collegato a un identificatore utente o dispositivo e viene utilizzato dal team Firebase per determinare l'adozione della piattaforma e della versione al fine di prendere decisioni informate sulle funzionalità di Firebase.

Nucleo

FirebaseCore

  • Non raccoglie dati.

FirebaseCoreDiagnostics

Sempre raccolto

Utilità di Google

  • Non raccoglie dati, ma include utilità di rete che possono essere utilizzate da altri SDK per raccogliere dati.

Google Data Transport

Include utilità di rete che possono essere utilizzate da altri SDK per raccogliere dati.

Sempre raccolto

  • Raccoglie l' agente utente Firebase .
  • Raccoglie metadati sulle prestazioni dell'SDK, ad esempio la dimensione della cache degli eventi del registro client e il numero di eventi del registro client eliminati per vari motivi, per monitorare e mantenere la qualità del prodotto.

Test A/B

FirebaseABTesting

Gli A/B Testing non raccolgono dati.

L'SDK Firebase A/B Testing imposta e utilizza le proprietà utente di Google Analytics per specificare l'appartenenza ai gruppi di esperimenti per Firebase Remote Config e Firebase In-App Messaging.

statistiche di Google

Le informazioni sulla raccolta dei dati di Google Analytics sono disponibili in questo articolo di supporto .

Controllo dell'app

FirebaseAppCheck

Dipendente dall'utilizzo

  • Se il provider DeviceCheck è installato, raccoglie il token DCDevice da DeviceCheck .
  • Se il provider App Attest è installato, raccoglie sia l'oggetto di attestazione che l'oggetto di asserzione da App Attest .

Distribuzione dell'app

L'SDK di App Distribution è destinato esclusivamente all'utilizzo del beta testing. Non includere l'SDK di App Distribution nella tua applicazione quando la invii all'App Store.

Autenticazione

Autenticazione Firebase

Sempre raccolto

  • Genera e memorizza identificatori per scopi di autenticazione dell'utente.

Dipendente dall'utilizzo

  • Raccoglie un nome visualizzato, se lo sviluppatore fornisce un nome visualizzato per l'utente.
  • Raccoglie gli indirizzi e-mail degli utenti forniti dallo sviluppatore quando si utilizza l'autenticazione tramite password e-mail o collegamento e-mail oppure come contenuto nella risposta di un provider federato se lo sviluppatore utilizza un'identità federata.
  • Raccoglie i numeri di telefono degli utenti forniti dallo sviluppatore quando si utilizza l'autenticazione del telefono o se il numero di telefono dell'utente viene aggiunto come metodo di autenticazione. Raccolti anche durante i flussi di autenticazione SMS come secondo fattore.
  • Raccoglie informazioni di contatto relative ai provider di autenticazione di terze parti se lo sviluppatore utilizza un provider di autenticazione di terze parti con l'autenticazione Firebase. Ad esempio, l'identificatore di un utente può essere collegato al suo profilo Facebook se lo sviluppatore utilizza l'autenticazione di Facebook, a seconda degli ambiti concessi. Per ulteriori informazioni, fare riferimento alla documentazione del provider di autenticazione.
  • Memorizza l'ID Game Center dell'utente se l'app è collegata a Game Center.
  • Raccoglie questo token se la tua app utilizza reCAPTCHA Enterprise per proteggere i flussi di autenticazione. Consulta ulteriori dettagli sulla privacy di Apple per reCAPTCHA Enterprise .

Crashlytics

FirebaseCrashlytics

Sempre raccolto

  • Raccoglie le analisi dello stack e lo stato dell'applicazione rilevante quando un'applicazione si arresta in modo anomalo.
  • Raccoglie informazioni sul dispositivo e sul sistema operativo per assistere nel debug degli arresti anomali.

Dipendente dall'utilizzo

  • Raccoglie eventuali chiavi personalizzate, registri e ID utente con testo libero che gli sviluppatori allegano ai rapporti sugli arresti anomali. Raccoglie inoltre eventuali eventi non irreversibili definiti dallo sviluppatore con analisi dello stack personalizzate.
  • Raccoglie i log "breadcrumb" se Crashlytics viene utilizzato insieme a Google Analytics. Questi registri identificano le azioni dell'utente immediatamente prima di un arresto anomalo insieme al conteggio degli arresti anomali.

Banca dati in tempo reale

FirebaseDatabase

Sempre raccolto

Sempre raccolto

  • Raccoglie temporaneamente i dati del dispositivo, tra cui le dimensioni dello schermo, la lingua, la versione del sistema operativo, l'ID del bundle, l'indirizzo IP e la versione dell'SDK Firebase per i deep link differiti (deep link dopo l'installazione dell'app).

Raccolti per impostazione predefinita

  • Registra automaticamente gli eventi di interazione dei collegamenti tramite Google Analytics se è presente il framework FirebaseAnalytics . Per disabilitare la registrazione automatica degli eventi, rimuovi FirebaseAnalytics dall'app.
  • Raccoglie temporaneamente l'URL del collegamento dinamico nel pasteboard del dispositivo, se disponibile, al primo avvio dell'app. Gli sviluppatori possono disabilitare l'uso di Pasteboard impostando la proprietà FirebaseDeepLinkPasteboardRetrievalEnabled su NO nel file Info.plist dell'app.

Cloud Fire Store

FirebaseFirestore

Sempre raccolto

Funzioni del cloud

FirebaseFunzioni

Sempre raccolto

  • Raccoglie i metadati di chiamata della funzione, inclusi il nome della funzione e l'indirizzo IP del chiamante della funzione.

Messaggistica in-app

FirebaseInAppMessaging

Sempre raccolto

  • Registra le interazioni con i messaggi in-app. Queste interazioni (impressioni, clic, licenziamenti) vengono registrate tramite Google Analytics. Le interazioni vengono registrate anche da Firebase per aiutare gli sviluppatori a valutare l'efficacia delle campagne di messaggistica.

Installazioni Firebase

Installazioni Firebase

Sempre raccolto

FirebaseInstanceID (obsoleto)

FirebaseInstanceID è deprecato.

Sempre raccolto

  • Genera identificatori per installazione che non identificano in modo univoco un utente o un dispositivo fisico.
  • Genera e raccoglie il token di registrazione FCM, un ID di istanza dell'app utilizzato da FirebaseMessaging per le notifiche push.
  • Registra il token APN e lo associa a un ID istanza Firebase (token di registrazione FCM).
  • Raccoglie modello del dispositivo, lingua, fuso orario, versione del sistema operativo, identificatore dell'applicazione e versione dell'applicazione per generare il token di registrazione FCM.

Messaggistica sul cloud

FirebaseMessaging

Sempre raccolto

  • Raccoglie l'identificatore dell'applicazione e la versione dell'applicazione per la sottoscrizione e l'annullamento della sottoscrizione dell'argomento.

Raccolti per impostazione predefinita

  • Registra automaticamente le interazioni di notifica tramite Google Analytics se è presente il framework FirebaseAnalytics . Per disattivare questo comportamento, rimuovi FirebaseAnalytics dalla tua app.

FirebaseML

FirebaseMLCommon

  • Non raccoglie alcun dato.

FirebaseMLModelDownloader

Sempre raccolto

  • Raccoglie i metadati di download del modello ML, come eventi di download, eventi di eliminazione ed errori.

FirebaseMLModelInterpreter

Raccolti per impostazione predefinita

  • Raccoglie metadati di inferenza ML, come durata dell'inferenza e tasso di errore. Per disabilitare, impostare la proprietà ModelInterpreter.isStatsCollectionEnabled su false .

FirebaseMLVision

Raccolti per impostazione predefinita

  • Raccoglie i metadati del modello ML Vision, come eventi di creazione e rilevamento. Per disabilitare, impostare la proprietà Vision.isStatsCollectionEnabled su false .

Monitoraggio delle prestazioni

FirebasePerformance

Sempre raccolto

  • Raccoglie gli indirizzi IP per fornire la segmentazione geografica dei dati sulle prestazioni.
  • Raccoglie parametri relativi alle prestazioni dell'app, ad esempio il tempo di avvio dell'app e la latenza delle richieste di rete, nonché tracce personalizzate specificate dallo sviluppatore per misurare le prestazioni dell'app.
  • Raccoglie l'utilizzo della CPU/memoria dell'applicazione per fornire una visualizzazione temporale delle prestazioni dell'app.
  • Raccoglie informazioni sul dispositivo, informazioni sul sistema operativo e informazioni sull'applicazione per filtrare i dati sulle prestazioni rispetto a diversi segmenti di dispositivi.

Configurazione remota

FirebaseRemoteConfig

Sempre raccolto

  • Raccoglie l' agente utente Firebase .
  • Raccoglie il codice paese, il codice lingua, il fuso orario, la versione del sistema operativo, l'ID dell'app Apple Firebase e l'ID bundle del dispositivo per scegliere come target i parametri basati su questi dati. Anche la versione del sistema operativo e la versione dell'SDK vengono raccolte e aggregate per comprendere le tendenze di utilizzo e fornire informazioni sulla direzione del prodotto.

Dipendente dall'utilizzo

Se Remote Config viene utilizzato insieme a Google Analytics:

  • Raccoglie le proprietà utente ottenute dall'SDK Firebase per Google Analytics per scegliere come target parametri basati sulle condizioni delle proprietà utente.
  • Raccoglie il timestamp dell'evento first_open ottenuto dall'SDK Firebase per Google Analytics per scegliere come target i parametri basati sulla prima ora di apertura.

Se viene utilizzata la personalizzazione di Remote Config:

  • I dati ottenuti dall'SDK Firebase Remote Config e gli eventi ottenuti dall'SDK Firebase per Google Analytics possono essere utilizzati per costruire modelli predittivi e misurare le prestazioni di tali modelli.

Sessioni Firebase

FirebaseSessions

Sempre raccolto

  • Raccoglie metadati sulle prestazioni dell'app, come l'ID del bundle, le informazioni sul sistema operativo, la versione dell'SDK e il tipo di connessione di rete per monitorare la qualità dell'app.
  • Raccoglie dati sull'utilizzo, ad esempio il tempo in cui un'app è stata messa in background per raggruppare i parametri delle prestazioni in sessioni utente per filtrare l'utilizzo in base alla sessione.

Archiviazione nel cloud

FirebaseStorage

Sempre raccolto