Mit iOS 14.5 verlangt Apple von Entwicklern, dass sie die Erlaubnis des Benutzers über das App Tracking Transparency Framework einholen, um ihn zu verfolgen oder auf die Werbekennung (IDFA) seines Geräts zuzugreifen. Weitere Einzelheiten finden Sie in den Dokumentationen zum Datenschutz und zur Datenverwendung von Apple und zur Transparenz bei der App-Verfolgung von Apple .
Betroffene Firebase-Produkte
Firebase SDKs greifen nicht auf IDFA zu, obwohl einige Integrationen mit Google Analytics haben, die den IDFA-Zugriff beinhalten können.
Die folgende Tabelle listet Firebase-Produkte auf, die auf Apple-Plattformen verfügbar sind, und beschreibt, wie die Funktionalität der einzelnen Produkte beeinträchtigt wird, wenn auf IDFA nicht zugegriffen werden kann.
Produkt | Auswirkungen, wenn auf IDFA nicht zugegriffen werden kann |
---|---|
A/B-Tests | Einige Targeting-Daten (wie demografische Daten) in der A/B-Testing-Integration mit Google Analytics werden aus dem IDFA abgeleitet. In Apps ohne Zugriff auf den IDFA ist dieses Targeting nicht verfügbar. |
App-Check | Keine Auswirkungen |
App-Verteilung | Keine Auswirkungen |
Authentifizierung | Keine Auswirkungen auf Authentifizierungs- und Erstanbieter-Authentifizierungsanbieter wie Google Sign-In und Telefonauthentifizierung. |
Crashlytics | Keine Auswirkungen. Die Crashlytics-Integration mit Google Analytics, die Echtzeit-Absturzdaten und Breadcrumbs bereitstellt, ist nicht vom IDFA abhängig. |
Dynamische Links | Keine Auswirkungen auf die Funktion zum Öffnen von Links. Bei Verwendung mit Google Analytics ist die Zuordnung für Link-Conversion-Ereignisse nicht verfügbar. |
Cloud-Firestore | Keine Auswirkungen |
Cloud-Funktionen | Keine Auswirkungen |
In-App-Messaging | Keine Auswirkungen |
Firebase-Installationen | Keine Auswirkungen |
Instanz-ID | Keine Auswirkungen |
Cloud-Messaging | Bei Verwendung mit Google Analytics protokolliert Google Analytics automatisch einige FCM-bezogene Conversion-Ereignisse. Die Namensnennung für diese Ereignisse erfordert IDFA-Zugriff. |
Firebase ML | Keine Auswirkungen |
Leistungsüberwachung | Keine Auswirkungen |
Remote-Konfig | Bei Verwendung mit Google Analytics lässt Remote Config keine automatisch erstellten Benutzereigenschaften für das Targeting ohne IDFA-Zugriff zu. |
Echtzeit-Datenbank | Keine Auswirkungen |
Cloud-Speicher | Keine Auswirkungen |
Betroffene Firebase-Integrationen
In der folgenden Tabelle sind Firebase-integrierte Produkte aufgeführt, die betroffen sind, wenn auf IDFA nicht zugegriffen werden kann.
Produkt | Auswirkungen, wenn auf IDFA nicht zugegriffen werden kann |
---|---|
Google Analytics | Analytics-Ereignisprotokollierung, Ereignisberichte und Konversionsmessung sind nicht betroffen, aber die Zuordnung wird beeinträchtigt, wenn auf IDFA nicht zugegriffen werden kann. Um mehr über die Reaktion von Google auf iOS 14 zu erfahren, lesen Sie unseren Blogbeitrag . |
Anfordern der App-Tracking-Berechtigung unter iOS 14
Wenn Sie möchten, dass Ihre Apple-Anwendung auf IDFA zugreifen kann, können Sie das App Tracking Transparency-Framework von Apple zu Ihrer App hinzufügen und die Erlaubnis anfordern, die IDFA Ihrer Benutzer zu verfolgen oder darauf zuzugreifen.
Viele Anwendungen zeigen einen Aufwärm- oder Erklärbildschirm an, bevor sie um Erlaubnis fragen. Auf dem Erklärbildschirm können Sie Benutzern mehr Kontext darüber geben, wie Ihre App IDFA verwendet, bevor Sie den Zugriff anfordern.
Wenn Sie ein AdMob- oder Ad Manager-App-Publisher sind, sollten Sie die Verwendung von Funding Choices in Betracht ziehen, das die Einholung der Zustimmung zur Bereitstellung personalisierter Werbung sowie die Zustimmung zur automatischen Nachverfolgung des Nutzers gemäß den Richtlinien von Apple verwaltet. Weitere Informationen finden Sie auf der Seite AdMob-Einwilligung mit Nutzernachrichten .
Die folgende Anleitung bietet eine Lösung mit Firebase In-App Messaging zum Erstellen und Anzeigen eines Erklärungsbildschirms, bevor der Tracking-Zugriff über App Tracking Transparency angefordert wird.
Fügen Sie Ihrer App In-App-Messaging hinzu
Befolgen Sie die Anweisungen zum Hinzufügen von In-App-Messaging zu Ihrer Apple-Anwendung .
Behandeln Sie die Ablehnung von In-App-Nachrichten
Vermeiden Sie zunächst die Anzeige des Erklärungsbildschirms auf Geräten, die das Zustimmungsdialogfeld nicht anzeigen können, z. B. Geräte mit iOS 13. Stellen Sie sicher, dass dieser Code unmittelbar nach FirebaseApp.configure()
ausgeführt wird.
Schnell
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
Implementieren Sie das InAppMessagingDisplayDelegate
Protokoll, um Ereignisse zu verarbeiten, wenn der Benutzer den Erklärungsbildschirm schließt. Wenn der Benutzer auf OK tippt, zeigen Sie die Systemeingabeaufforderung über das App-Tracking-Transparenz-Framework an.
Schnell
// 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
}
}
Erstellen Sie eine In-App-Messaging-Kampagne
Sobald der Code in Ihrer Anwendung vorhanden ist, erstellen Sie eine In-App-Nachricht in der Firebase-Konsole.
- Erstellen Sie in der Firebase-Konsole eine neue In-App-Messaging-Kampagne.
- Füllen Sie die In-App-Nachrichten mit Ihrem gewünschten Inhalt und legen Sie fest, dass die Nachricht beim
app_launch
Ereignis ausgelöst wird. - Stellen Sie im Abschnitt „Targeting“ sicher, dass die Kampagne nur auf die neueste Version Ihrer App und höher ausgerichtet ist.
Sie können das Erscheinungsbild des Erklärbildschirms anpassen, indem Sie die Anweisungen in der Dokumentation zum In-App-Messaging befolgen.
Optional: A/B-Test verschiedener Erklärbildschirme
In-App-Messaging verfügt über eine integrierte Integration mit Firebase A/B Testing , die Sie verwenden können, um mit verschiedenen Erklärungsbildschirmen zu experimentieren.
Firebase A/B Testing erstellt automatisch Experimentgruppen und hilft Ihnen, zu visualisieren, wie Benutzer mit verschiedenen Varianten Ihrer Anwendung interagieren.
App-Tracking-Berechtigungen aufzeichnen
Wenn Sie beim Verarbeiten der Antwort auf die App-Tracking-Berechtigungen kein Google Analytics-Ereignis protokolliert haben, müssen Sie dies tun, um Änderungen in der Antwortrate beim Ausführen eines A/B-Experiments zu messen.
Schnell
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.
}
}
Erstellen Sie ein neues Conversion-Ereignis
Navigieren Sie im Abschnitt „Analytics“ der Firebase-Konsole zum Menü „Conversions“ und fügen Sie dann ein neues Conversion-Ereignis mit demselben Namen wie das mit dem obigen Beispielcode protokollierte Ereignis hinzu.
Erstellen Sie einen neuen Test
Klicken Sie im In-App-Messaging-Menü der Konsole auf Neues Experiment und befolgen Sie dann die Anweisungen auf den daraufhin angezeigten Bildschirmen.
- Stellen Sie im Abschnitt „Targeting“ sicher, dass die Kampagne nur auf die neueste Version Ihrer App und höher ausgerichtet ist.
- Wählen Sie im Abschnitt "Ziele" das Conversion-Ereignis aus, das Sie mit dem obigen Beispielcode erstellt haben, sowie alle anderen Messwerte, die Sie verfolgen möchten.
Nachdem Sie Ihr Experiment veröffentlicht haben, muss es einige Zeit lang Daten sammeln, bevor es schlüssige Ergebnisse liefern kann.
Lesen Sie die Dokumentation zu Firebase A/B-Tests, um zu erfahren, wie Sie ein Experiment überwachen und eine erfolgreiche Variante einführen.