Anleitung: iOS Ads-Conversions erfassen

Schritt 3: On-Device-Conversion-Messung mit Google Analytics starten


Einführung: Conversions von iOS-Anzeigen erfassen

Schritt 1: Anmeldeverfahren implementieren

Schritt 2: Google Analyticseinbinden

Schritt 3: On-Device-Conversion-Messung mit Google Analytics

Schritt 4: Häufige Probleme beheben


Nachdem Sie die E-Mail-Adressen und Telefonnummern der Nutzer erfasst haben und Ihre App das Google Analytics für Firebase SDK enthält, können Sie mit diesen beiden Elementen Conversions erfassen.

API aufrufen

Rufen Sie die Conversion-Messungs-API mit der im ersten Schritt erfassten E-Mail-Adresse oder Telefonnummer auf, die für die Conversion-Messung von Anzeigen verwendet wird. Dabei dürfen keine personenbezogenen Daten das Gerät des Nutzers verlassen.

Es gibt zwei Möglichkeiten, die Messung zu starten:

E-Mail-Adresse oder Telefonnummer verwenden

Swift

Importieren Sie das Modul FirebaseAnalytics und übergeben Sie die E-Mail-Adresse oder Telefonnummer an die API initiateOnDeviceConversionMeasurement().

import FirebaseAnalytics

// ...
// If you're using an email address....
Analytics.initiateOnDeviceConversionMeasurement(emailAddress: "example@gmail.com")
// If you're using a phone number....
Analytics.initiateOnDeviceConversionMeasurement(phoneNumber: "+15555555555")

Objective-C

Importieren Sie das Modul FirebaseAnalytics und übergeben Sie die E-Mail-Adresse an die API initiateOnDeviceConversionMeasurementWithEmailAddress: oder die Telefonnummer an die API initiateOnDeviceConversionMeasurementWithPhoneNumber:.

@import FirebaseAnalytics;

// ...
// If you're using an email address....
[FIRAnalytics initiateOnDeviceConversionMeasurementWithEmailAddress:@"example@gmail.com"];
// If you're using a phone number....
[FIRAnalytics initiateOnDeviceConversionMeasurementWithPhoneNumber:@"+15555555555"];

Einheit

Importieren Sie den Namespace Firebase.Analytics und übergeben Sie die E-Mail-Adresse an die API InitiateOnDeviceConversionMeasurementWithEmailAddress() oder die Telefonnummer an die API InitiateOnDeviceConversionMeasurementWithPhoneNumber():

using Firebase.Analytics;

// ...
// If you're using an email address....
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithEmailAddress("example@gmail.com");
// If you're using a phone number....
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithPhoneNumber("+15555555555");

Best Practices für den Aufruf der API

So sorgen Sie für eine genaue und kontinuierliche On-Device-Conversion-Messung:

Google Analytics für Firebase SDK Version 12.1.0 und höher enthält Verbesserungen für die On-Device-Conversion-Messung. Damit diese Verbesserungen für alle Nutzer gelten, auch für diejenigen, die sich bereits angemeldet haben, bevor Ihre App aktualisiert wurde, ist es wichtig, die API initiateOnDeviceConversionMeasurement nach den App-Updates noch einmal aufzurufen.

Nutzer, die sich vor dem App-Update auf SDK-Version 12.1.0 angemeldet haben, werden erst dann in den Bereich der optimierten Analysen aufgenommen, wenn die API initiateOnDeviceConversionMeasurement noch einmal für sie aufgerufen wird. Ohne die App-Update-Prüfung würde dies nur geschehen, wenn sie sich abmelden und wieder anmelden.

Als Best Practice gilt, die API für angemeldete Nutzer mindestens einmal pro App-Version aufzurufen. Sie können eine Prüfung beim Starten der App implementieren, um die API nur aufzurufen, wenn sich die App-Version seit dem letzten Aufruf geändert hat.

Swift

// On app launch if the app version has changed, call the API with the first-party data
// (for example: email address, phone number, hashed email address, hashed phone number).
let cachedAppVersion = UserDefaults.standard.string(forKey: "cachedAppVersion")
let currentAppVersion =
  Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String

if cachedAppVersion != currentAppVersion {
let hashedEmailAddress = ...
Analytics.initiateOnDeviceConversionMeasurement(hashedEmailAddress: hashedEmailAddress)
UserDefaults.standard.set(currentAppVersion, forKey: "cachedAppVersion")
}

Objective-C

// On app launch if the app version has changed, call the API with the first-party data
// (for example: email address, phone number, hashed email address, hashed phone number).
NSString *cachedAppVersion =
  [[NSUserDefaults standardUserDefaults] stringForKey:@"cachedAppVersion"];
NSString *currentAppVersion = [[NSBundle mainBundle]
  objectForInfoDictionaryKey:@"CFBundleShortVersionString"];

if (![cachedAppVersion isEqualToString:currentAppVersion]) {
NSString *hashedEmailAddress = ...
[FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedEmailAddress:hashedEmailAddress];
[[NSUserDefaults standardUserDefaults] setObject:currentAppVersion
                                          forKey:@"cachedAppVersion"];
}

Einheit

// On app launch if the app version has changed, call the API with the first-party data
// (for example: email address, phone number, hashed email address, hashed phone number).
string cachedAppVersion = PlayerPrefs.GetString("cached_app_version", "");
string currentAppVersion = Application.version;

if (cachedAppVersion != currentAppVersion) {
byte[] hashedEmailAddress = ...
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedEmailAddress(
    hashedEmailAddress);
PlayerPrefs.SetString("cached_app_version", currentAppVersion);
PlayerPrefs.Save();
}

Sofort nach der Anmeldung aufrufen

Rufen Sie die API initiateOnDeviceConversionMeasurement immer auf, nachdem sich ein Nutzer erfolgreich angemeldet oder seine E-Mail-Adresse oder Telefonnummer registriert hat.

Timing für neue Registrierungen

Wenn ein wichtiges Conversion-Ereignis unmittelbar nach der Registrierung eines Nutzers eintritt (und Sie die API aufrufen), sollten Sie eine kurze Verzögerung (z. B. fünf Sekunden) zwischen dem API-Aufruf und der Protokollierung des Schlüsselereignisses implementieren. So wird sichergestellt, dass die On-Device-Messung vollständig initialisiert ist, bevor das Ereignis protokolliert wird.

Gehashte E-Mail-Adresse oder Telefonnummer verwenden

Die API akzeptiert E-Mail-Adressen und Telefonnummern, die mit SHA256 gehasht wurden. Sie können die Kontrolle über die Daten Ihrer Nutzer behalten, indem Sie das Hashing in Ihrem Code durchführen, bevor Sie Aufrufe an das SDK senden.

Wenn Sie gehashte Anmeldedaten verwenden möchten, normalisieren Sie Adressen und Nummern, hashen Sie sie mit SHA256 und rufen Sie dann die API auf.

E-Mail-Adressen und Telefonnummern normalisieren

Bei E-Mail-Adressen geht die Google Analytics API davon aus, dass eine bestimmte Normalisierung erfolgt ist, bevor SHA256 angewendet wird. Folgen Sie daher dieser Anleitung, um Ihre Daten zu normalisieren:

  1. Wandeln Sie die gesamte E-Mail-Adresse in Kleinbuchstaben um.

  2. Wenn die E-Mail-Adresse auf die Domain @googlemail.com endet, ersetzen Sie die @googlemail.com Domain durch @gmail.com.

  3. Für Adressen, die auf die Domain @gmail.com enden (einschließlich der im vorherigen Schritt geänderten):

    1. Entfernen Sie alle Punkte aus dem Nutzernamen.

    2. Ersetzen Sie im Nutzernamen die folgenden Zeichen:

      • Ersetzen Sie die Buchstaben „I“ oder „i“ oder die Ziffer „1“ durch den Buchstaben „l“.
      • Ersetzen Sie die Ziffer „0“ durch den Buchstaben „o“.
      • Ersetzen Sie die Ziffer „2“ durch den Buchstaben „z“.
      • Ersetzen Sie die Ziffer „5“ durch den Buchstaben „s“.

Beispiel nach der Normalisierung:

  • an.email.user0125@googlemail.com wird zu anemalluserolzs@gmail.com
  • CAPSUSER0125@provider.net wird zu capsuser0125@provider.net

Bei Telefonnummern müssen die Nummern bereits im E.164-Format vorliegen (d. h. mit „+“ beginnen, 1–3 Ziffern für den Ländercode und maximal 12 Ziffern für die Teilnehmernummer enthalten ), bevor sie mit SHA256 gehasht werden.

Die gehashten SHA256-E-Mail-Adressen oder ‑Telefonnummern müssen 32 Byte lang sein und dürfen keine Hexadezimalstrings sein.

API mit gehashten Anmeldedaten aufrufen

Swift

Importieren Sie das Modul FirebaseAnalytics und übergeben Sie die E-Mail-Adresse oder Telefonnummer an die API initiateOnDeviceConversionMeasurement().

import FirebaseAnalytics

// ...
// If you're using an email address....
Analytics.initiateOnDeviceConversionMeasurement(hashedEmailAddress: hashedEmailAddress)
// If you're using a phone number....
Analytics.initiateOnDeviceConversionMeasurement(hashedPhoneNumber: hashedPhoneNumber)

Objective-C

Importieren Sie das Modul FirebaseAnalytics und übergeben Sie die E-Mail-Adresse an die API initiateOnDeviceConversionMeasurementWithHashedEmailAddress: oder die Telefonnummer an die API initiateOnDeviceConversionMeasurementWithHashedPhoneNumber:.

@import FirebaseAnalytics;

// ...
// If you're using an email address....
[FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedEmailAddress:hashedEmailAddress];
// If you're using a phone number....
[FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedPhoneNumber:hashedPhoneNumber];

Einheit

Importieren Sie den Namespace Firebase.Analytics und übergeben Sie die E-Mail-Adresse an die API InitiateOnDeviceConversionMeasurementWithHashedEmailAddress() oder die Telefonnummer an die API InitiateOnDeviceConversionMeasurementWithHashedPhoneNumber():

using Firebase.Analytics;

// ...
// If you're using an email address....
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedEmailAddress(hashedEmailAddress);
// If you're using a phone number....
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedPhoneNumber(hashedPhoneNumber);

Einbindung verifizieren

Aktivieren Sie den Debug-Modus. Nachdem Sie die Measurement API zum Starten der Messung aufgerufen haben, muss in der Xcode-Debugging-Konsole eine Meldung wie der folgende Logeintrag angezeigt werden:

[FirebaseAnalytics][I-ACS023225] Initiated on-device conversion measurement

Wenn Sie den Debug-Modus aktiviert und das Startargument -DebugOnDeviceConversionMeasurement eingefügt haben, wird beim Aufrufen der API initiateOnDeviceConversionMeasurement() ein Treffer simuliert.

[FirebaseAnalytics][I-ACS023229] On-device conversion measurement found a match




Schritt 2: Google Analytics einbinden Schritt 4: Häufige Probleme behebenGoogle Analytics