Senden Sie App-Ereignisse mithilfe des Messprotokolls an GA4

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

1. Einleitung

Zuletzt aktualisiert: 2021-06-08

Was Sie bauen werden

In diesem Codelab erfahren Sie, wie Sie mithilfe des Messprotokolls externe Ereignisse an GA4 senden.

Dieses Codelab geht davon aus, dass Sie bereits eine App mit Google Analytics für Firebase implementiert haben. Wenn Sie erfahren möchten, wie Sie Google Analytics for Firebase integrieren können, lesen Sie bitte zuerst dieses Codelab . Wenn Sie erfahren möchten, wie Sie mit Firebase eine App erstellen, lesen Sie bitte Firebase Android Codelab-Build Friendly Chat .

Was Sie lernen werden

  • Schritte für Ihren ersten MP-Anruf
  • Verstehen Sie die für den Anruf erforderlichen Parameter
  • Senden und validieren Sie Ihren Testanruf
  • Erstellen Sie ein Beispielskript in Python, um den Aufruf zu tätigen

Was du brauchen wirst

  • Ihre Android- oder iOS-App
  • Jede IDE, um Änderungen vorzunehmen
  • GA4-Konto
  • Optional - Python-Entwicklungsumgebung (oder Colab )

2. Sammeln Sie die Pflichtfelder

API-Secret in GA4 erstellen

Navigieren Sie zu GA4 und erstellen Sie Ihr neues API-Secret, indem Sie zu Admin > Data Streams navigieren > Stream auswählen > Measurement Protocol > Create

8dee89e850ae90bb.png

d0be19d8112435a2.png

de5a80a1445d3a14.png

Sie können einen beliebigen Spitznamen angeben, und der geheime Wert wird angezeigt, den Sie in Ihrem Anruf verwenden können

Falls Sie nicht sicher sind, wie Sie auf GA4 zugreifen, können Sie Ihr Firebase-Projekt besuchen, Projekteinstellungen > Integrationen > Google Analytics überprüfen und auf „Verwalten“ klicken. Die Google Analytics-Verbindung sollte sichtbar sein, und Sie können auch direkt von dort aus navigieren

f0feed0557420678.png

Sammeln Sie app_instance_id

Sie können eine der folgenden Methoden verwenden, um Ihre app_instance_id zu erfassen.

  1. BigQuery-Export verwenden
  2. Natives Abrufen in Ihrem App-Quellcode

Beides wird im Folgenden ausführlich erläutert

  1. BigQuery-Export verwenden

Wenn Sie den BigQuery-Export aktiviert haben, können Sie die folgenden Schritte ausführen

  • Melden Sie sich bei Firebase an
  • Navigieren Sie zu Projekteinstellungen > Integrationen > BigQuery
  • Klicken Sie neben dem Datensatz auf "In BigQuery anzeigen".

Hinweis: Der Datensatz wäre erst verfügbar, nachdem der Schalter für etwa 24 bis 48 Stunden aktiviert wurde

1dc4e93dee33316f.png

  • In BigQuery können Sie in der Tabelle nach user_pseudo_id suchen. Dies ist die app_instance_id, die Sie in Ihrem Aufruf verwenden können

aa6d384e380a11e8.png

  1. Natives Abrufen in Ihrem App-Quellcode

Wenn Ihre App mit Java erstellt wurde, können Sie so etwas verwenden, um die app_instance_id abzurufen

 FirebaseAnalytics.getInstance(this).getAppInstanceId().addOnCompleteListener(new OnCompleteListener<String>() {
        @Override
        public void onComplete(@NonNull Task<String> task) {
            if (task.isSuccessful()) {
                String user_pseudo_id = task.getResult();
            }
        }
    });

Für Kotlin können Sie Folgendes versuchen

Thread {
   Firebase.analytics.appInstanceId.addOnSuccessListener { user_pseudo_id ->
       Log.d("Firebase", "user_pseudo_id using appInstanceId is $user_pseudo_id")
       /*
       Store the value to your server or do something with the retrieved id
        */
   }
}.start()

Wenn Sie eine iOS-App haben, können Sie Folgendes in Swift verwenden

let user_pseudo_id = Analytics.appInstanceID()
print("user_pseudo_id = \(user_pseudo_id)")
/*
Store the value to your server or do something with the retrieved id
*/

Nachfolgend finden Sie weitere Links, abhängig von Ihrer Infrastruktur

3. Aufbau des Anrufs

Sie können mit dem Event Builder in GA4 einen Beispielanruf erstellen. (Dazu müssen Sie sich anmelden und Cookies aktiviert haben). Stellen Sie sicher, dass der Schalter auf "Firebase" eingestellt ist.

15440faa9ca6a1f1.png

Sie müssen die folgenden Felder ausfüllen

  • api_secret - Bereits früher auf GA4 erstellt
  • firebase_app_id – Navigieren Sie dazu zu Admin > Data Streams > choose your stream . Es sollte wie unten angezeigt werden

71174b16f86ff03e.png

  • app_instance_id – Sie haben diesen Wert bereits abgerufen
  • user_id ist nicht obligatorisch. Sie können es jetzt leer lassen
  • Kategorie – ändern Sie dies in der Dropdown-Liste in „Benutzerdefiniert“ und geben Sie einen beliebigen Ereignisnamen Ihrer Wahl ein (verwenden Sie keine automatisch erfassten Ereignisse ). Hier verwenden wir "test_from_codelab"

cf580a708bb0a8a2.png

Optional können Sie auch Ereignisparameter und/oder Benutzereigenschaften angeben, indem Sie auf die Schaltflächen unten klicken

da59bb982f6f906a.png

Sobald Sie alles ausgefüllt haben, sollten Sie so etwas sehen, mit einer Schaltfläche zum „Validate Event“

39676ab485d17dc0.png

Sobald Sie diese erreicht haben, klicken Sie auf „VALIDATE EVENT“ , die orange hervorgehobene Schaltfläche. Es sollte die unten stehende Meldung anzeigen, die angibt, dass das Ereignis gültig ist, und Sie sollten eine Schaltfläche sehen, die jetzt "SEND TO GA" anzeigt. Wenn das Ereignis zu diesem Zeitpunkt als ungültig angezeigt wird, teilt Ihnen das Tool das genaue Feld mit, in dem ein Problem vorliegt, und Sie können es beheben und es erneut versuchen

1d63d1e067c46294.png

Sie können jetzt auf die Schaltfläche klicken, und es sollte ein Testereignis an GA4 senden

4. Validierung von Ereignissen in GA4

Sobald Sie das Ereignis gesendet haben, können Sie zu Ihrem GA4-Konto navigieren und Echtzeit überprüfen. Sie sollten sehen, dass das Ereignis durchkommt

7b9e9a0f74b64757.png

Es kann etwa 24 Stunden dauern, bis die Ereignisse von der Echtzeitansicht auf die Registerkarte mit den eigentlichen Ereignisberichten übertragen werden. Machen Sie sich also keine Sorgen, wenn Sie dies nicht sofort in den regulären Ereignisberichten sehen!

5. Erstellen eines Python-Skripts

Nachdem Sie es nun getestet haben, können Sie den API-Aufruf und die Ereignisnutzlast untersuchen, um eine ähnliche Architektur in Python (oder in einer beliebigen Sprache Ihrer Wahl) zu erstellen, die diesen Aufruf durchführen kann. Sie können dies dann in Ihrer gewünschten Frequenz planen und operationalisieren. Für diesen Teil können Sie entweder eine beliebige IDE Ihrer Wahl verwenden, die Python unterstützt, oder einfach ein Google Colab-Notebook verwenden, das keine Installation auf Ihrem Gerät erfordert

Wenn Sie sich wieder dem GA4 Event Builder zuwenden, werden Sie sehen, dass der Endpunkt wie folgt ist

POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX 
HTTP/1.1
Host: www.google-analytics.com

Die Ereignisnutzlast war wie folgt

{
  "app_instance_id": XXXX,
  "non_personalized_ads": false,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}

Sie können dies in Python übersetzen, indem Sie so etwas verwenden

import requests
import json
url = "https://www.google-analytics.com/mp/collect?firebase_app_id=XXXX&api_secret=XXXX"
payload = {
  "app_instance_id": XXXX,
  "non_personalized_ads": False,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}
r = requests.post(url,data=json.dumps(payload),verify=True)
print(r.status_code)

Sobald Sie dies mit den richtigen Werten ausgeführt haben, sollten Sie das Ereignis ebenfalls in Echtzeit in GA4 sehen.

6. Herzlichen Glückwunsch

Herzlichen Glückwunsch, Sie haben das Messprotokoll erfolgreich in GA4 verwendet. Jetzt können Sie leistungsstarke Lösungsarchitekturen erstellen, um aussagekräftigere Daten an Google Analytics zu senden und Ihre Marketing- und Geschäftsanalysen zu verbessern. Um das Beste daraus zu machen, empfehlen wir außerdem, sich mit Google Ads zu verbinden und diese Ereignisse als Conversions zu importieren. Detaillierte Anweisungen dazu finden Sie in Schritt 6 in diesem Codelab . Für Conversion-Tracking-Zwecke zeigt Google Ads nur Daten, die mit IDFA oder Geräte-IDs verknüpft sind, die innerhalb der letzten 60 Tage vom Firebase SDK erfasst wurden. Denken Sie daran, dass dies immer noch eine Alpha-API ist, und stellen Sie sicher, dass Sie die hier aufgeführten Einschränkungen durchgehen, die vor dem vollständigen Start behoben werden sollten

Du hast gelernt

  • So sammeln Sie die richtigen Variablen, um MP-Anrufe zu tätigen
  • So senden und validieren Sie Testereignisse
  • So erstellen Sie ein Skript zum Senden von MP-Anrufen