Unterstützung von iOS 14

Mit iOS 14.5 verlangt Apple von Entwicklern, dass sie über das App Tracking Transparency-Framework die Erlaubnis des Benutzers einholen, um ihn zu verfolgen oder auf die Werbekennung (IDFA) seines Geräts zuzugreifen. Weitere Einzelheiten finden Sie in der Dokumentation zum Datenschutz und zur Datennutzung von Apple sowie in der Dokumentation zur App-Tracking-Transparenz von Apple .

Betroffene Firebase-Produkte

Firebase SDKs greifen nicht auf IDFA zu, obwohl einige über Integrationen mit Google Analytics verfügen, die möglicherweise einen IDFA-Zugriff erfordern.

Die folgende Tabelle listet Firebase-Produkte auf, die auf Apple-Plattformen verfügbar sind, und beschreibt, wie die Funktionalität jedes Produkts beeinträchtigt wird, wenn IDFA nicht zugänglich ist.

Produkt Auswirkungen, wenn IDFA nicht zugänglich ist
A/B-Tests Einige Targeting-Daten (z. B. Demografie) in der A/B-Testing-Integration mit Google Analytics werden vom IDFA abgeleitet. In Apps ohne Zugriff auf die IDFA ist dieses Targeting nicht verfügbar.
App-Check Keine Auswirkungen
App-Verteilung Keine Auswirkungen
Authentifizierung Keine Auswirkungen auf die Authentifizierung und Erstanbieter-Authentifizierungsanbieter wie Google Sign-In und Telefonauthentifizierung.
Crashlytics Keine Auswirkungen. Die Crashlytics-Integration mit Google Analytics, die Absturzdaten und Breadcrumbs in Echtzeit bereitstellt, ist nicht von der IDFA abhängig.
Dynamische Links Keine Auswirkung 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-Nachrichten 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. Für die Namensnennung dieser Ereignisse ist ein IDFA-Zugriff erforderlich.
Firebase ML Keine Auswirkungen
Leistungsüberwachung Keine Auswirkungen
Remote-Konfiguration Bei Verwendung mit Google Analytics lässt Remote Config keine automatisch erstellten Benutzereigenschaften für das Targeting ohne IDFA-Zugriff zu.
Echtzeitdatenbank Keine Auswirkungen
Cloud-Speicher Keine Auswirkungen

Betroffene Firebase-Integrationen

In der folgenden Tabelle sind in Firebase integrierte Produkte aufgeführt, die betroffen sind, wenn auf IDFA nicht zugegriffen werden kann.

Produkt Auswirkungen, wenn IDFA nicht zugänglich ist
Google Analytics Die Protokollierung von Analytics-Ereignissen, die Ereignisberichterstattung und die Conversion-Messung sind davon nicht betroffen, die Zuordnung ist jedoch beeinträchtigt, wenn auf IDFA nicht zugegriffen werden kann. Weitere Informationen zur Reaktion von Google auf iOS 14 finden Sie in unserem Blogbeitrag .

Anfordern einer 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.

Bei vielen Anwendungen wird vor der Bitte um Erlaubnis ein Aufwärm- oder Erklärungsbildschirm angezeigt. Mit dem Erklärungsbildschirm können Sie Benutzern vor der Zugriffsanfrage mehr Kontext dazu geben, wie Ihre App IDFA verwendet.

Wenn Sie AdMob- oder Ad Manager-App-Publisher sind, sollten Sie die Verwendung von Funding Choices in Betracht ziehen, das die automatische Einholung der Einwilligung zur Bereitstellung personalisierter Werbung sowie der Einwilligung zur Nachverfolgung des Nutzers gemäß den Richtlinien von Apple übernimmt. Weitere Einzelheiten finden Sie auf der Seite „AdMob-Einwilligung mit Nutzernachrichten“ .

Der folgende Leitfaden bietet eine Lösung mit Firebase In-App Messaging zum Erstellen und Anzeigen eines Erklärungsbildschirms vor der Anforderung von Tracking-Zugriff über App Tracking Transparency.

Fügen Sie In-App-Messaging zu Ihrer App hinzu

Befolgen Sie die Anweisungen, um In-App-Messaging zu Ihrer Apple-Anwendung hinzuzufügen .

Behandeln Sie die Ablehnung von In-App-Nachrichten

Vermeiden Sie zunächst die Anzeige des Erklärungsbildschirms auf Geräten, die den Einwilligungsdialog nicht anzeigen können, z. B. auf Geräten 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, wird die Systemaufforderung über das App Tracking Transparency Framework angezeigt.

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.

  1. Erstellen Sie in der Firebase-Konsole eine neue In-App-Messaging-Kampagne.
  2. Füllen Sie die In-App-Nachrichten mit dem gewünschten Inhalt und legen Sie fest, dass die Nachricht beim app_launch Ereignis ausgelöst wird.
  3. Stellen Sie im Abschnitt „Targeting“ sicher, dass die Kampagne nur auf die neueste Version Ihrer App und höher abzielt.

Sie können das Erscheinungsbild des Erklärbildschirms anpassen, indem Sie den Anweisungen in der In-App-Messaging-Dokumentation folgen.

Optional: A/B-Test verschiedener Erklärbildschirme

In-App-Messaging verfügt über eine integrierte Integration mit Firebase A/B Testing , mit der Sie mit verschiedenen Erklärbildschirmen experimentieren können.

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 bei der Verarbeitung der App-Tracking-Berechtigungsantwort kein Google Analytics-Ereignis protokolliert haben, müssen Sie dies tun, um Änderungen in der Antwortrate bei der Durchführung 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 ein neues Experiment

Klicken Sie im Menü „In-App-Messaging“ 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 abzielt.
  • Wählen Sie im Abschnitt „Ziele“ das Conversion-Ereignis aus, das Sie mit dem obigen Beispielcode erstellt haben, sowie alle anderen Metriken, die Sie verfolgen möchten.

Sobald Sie Ihr Experiment veröffentlicht haben, muss es einige Zeit lang Daten sammeln, bevor es schlüssige Ergebnisse liefern kann.

Informationen dazu, wie Sie ein Experiment überwachen und eine erfolgreiche Variante einführen, finden Sie in der Dokumentation zu Firebase A/B Testing .