Wysyłaj zdarzenia aplikacji do GA4 za pomocą protokołu pomiarowego

1. Wstęp

Ostatnia aktualizacja: 2021-06-08

Co zbudujesz

W tym ćwiczeniu z kodowania dowiesz się, jak wysyłać zdarzenia zewnętrzne do GA4 za pomocą protokołu Measurement Protocol .

W tym ćwiczeniu z programowania zakładamy, że masz już zaimplementowaną aplikację z zaimplementowanym Google Analytics dla Firebase. Jeśli chcesz dowiedzieć się, jak zintegrować się z Google Analytics dla Firebase, najpierw zapoznaj się z tym ćwiczeniem z programowania. Jeśli chcesz dowiedzieć się, jak tworzyć aplikację za pomocą Firebase, zapoznaj się z przyjaznym czatem Firebase na temat ćwiczeń z kodowania na Androida .

Czego się nauczysz

  • Kroki, aby wykonać pierwszą rozmowę MP
  • Zrozum parametry wymagane do połączenia
  • Wyślij i zatwierdź swoją rozmowę testową
  • Zbuduj przykładowy skrypt w Pythonie, aby wykonać połączenie

Co będziesz potrzebował

  • Twoja aplikacja na Androida lub iOS
  • Dowolne IDE do wprowadzania zmian
  • Konto GA4
  • Opcjonalnie — środowisko programistyczne Python (lub Colab )

2. Zbierz pola obowiązkowe

Utwórz klucz tajny API w GA4

Przejdź do GA4 i utwórz nowy klucz tajny interfejsu API, przechodząc do Administracja > Strumienie danych > wybierz strumień > Protokół pomiaru > Utwórz

8dee89e850ae90bb.png

d0be19d8112435a2.png

de5a80a1445d3a14.png

Możesz podać dowolny pseudonim, a wyświetli się tajna wartość, której możesz użyć w rozmowie

Jeśli nie masz pewności, jak uzyskać dostęp do GA4, możesz odwiedzić swój projekt Firebase, sprawdzić Ustawienia projektu > Integracje > Google Analytics i kliknąć „Zarządzaj”. Połączenie z Google Analytics powinno być widoczne i bezpośrednio z niego można nawigować

f0feed0557420678.png

Zbierz identyfikator_instancji_aplikacji

Możesz użyć dowolnej z poniższych metod, aby zebrać swój identyfikator_instancji_aplikacji.

  1. Korzystanie z eksportu BigQuery
  2. Pobieranie natywne w kodzie źródłowym aplikacji

Oba z nich zostały szczegółowo wyjaśnione poniżej

  1. Korzystanie z eksportu BigQuery

Jeśli masz włączony eksport BigQuery , możesz wykonać poniższe czynności

  • Zaloguj się do Firebase
  • Przejdź do Ustawienia projektu > Integracje > BigQuery
  • Kliknij „Wyświetl w BigQuery” obok zbioru danych

Uwaga: zbiór danych byłby dostępny dopiero po włączeniu przełącznika na około 24-48 godzin

1dc4e93dee33316f.png

  • W BigQuery możesz sprawdzić user_pseudo_id w tabeli. To jest identyfikator_instancji_aplikacji, którego możesz użyć podczas rozmowy

aa6d384e380a11e8.png

  1. Pobieranie natywne w kodzie źródłowym aplikacji

Jeśli Twoja aplikacja jest stworzona przy użyciu języka Java, możesz użyć czegoś takiego, aby pobrać identyfikator app_instance_id

 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();
            }
        }
    });

W przypadku Kotlina możesz wypróbować poniższe

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()

Jeśli masz aplikację na iOS, możesz użyć następujących funkcji w Swift

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
*/

Poniżej znajduje się więcej linków w zależności od Twojej infrastruktury

3. Konstruowanie połączenia

Możesz utworzyć przykładowe wywołanie za pomocą Event Builder w GA4. (Wymaga to zalogowania się i włączenia obsługi plików cookie). Upewnij się, że przełącznik jest ustawiony na „firebase”

15440faa9ca6a1f1.png

Musisz wypełnić następujące pola

  • api_secret - Już utworzony wcześniej na GA4
  • firebase_app_id — aby to uzyskać, przejdź do opcji Administracja > Strumienie danych > wybierz strumień . Powinien być wyświetlany jak poniżej

71174b16f86ff03e.png

  • app_instance_id — już pobrałeś tę wartość
  • identyfikator_użytkownika nie jest obowiązkowy. Na razie możesz zostawić to puste
  • Kategoria — zmień tę opcję na „Niestandardowe” z menu rozwijanego i wpisz dowolną nazwę zdarzenia (nie używaj żadnych zdarzeń zbieranych automatycznie ). Tutaj używamy "test_from_codelab"

cf580a708bb0a8a2.png

Opcjonalnie możesz również wybrać parametry zdarzenia i/lub właściwości użytkownika, klikając poniższe przyciski

da59bb982f6f906a.png

Po wypełnieniu wszystkiego, powinieneś zobaczyć coś takiego, z przyciskiem „Zatwierdź wydarzenie”

39676ab485d17dc0.png

Gdy dotrzesz do tego, kliknij „WALIDUJ ZDARZENIE”, przycisk podświetlony na pomarańczowo. Powinien wyświetlić poniższy komunikat, określający, że zdarzenie jest ważne, a zobaczysz przycisk, aby teraz „WYŚLIJ DO GA”. W tym momencie, jeśli zdarzenie okaże się nieprawidłowe, narzędzie poinformuje Cię o dokładnym polu, w którym występuje problem, i możesz to naprawić i spróbować ponownie

1d63d1e067c46294.png

Możesz teraz kliknąć przycisk, który powinien wysłać zdarzenie testowe do GA4

4. Walidacja wydarzeń w GA4

Po wysłaniu wydarzenia możesz przejść do swojego konta GA4 i sprawdzić w czasie rzeczywistym. Powinieneś zobaczyć, jak wydarzenie się rozwija

7b9e9a0f74b64757.png

Może minąć około 24 godzin, zanim wydarzenia zostaną przeniesione z widoku w czasie rzeczywistym do zakładki raportowania rzeczywistych wydarzeń, więc nie musisz się martwić, jeśli nie zobaczysz tego od razu w zwykłym raportowaniu wydarzeń!

5. Budowanie skryptu Pythona

Teraz, po przetestowaniu, możesz sprawdzić wywołanie API i ładunek zdarzenia, aby zbudować podobną architekturę w Pythonie (lub w dowolnym wybranym języku), która może wykonać to wywołanie. Następnie możesz zaplanować to z żądaną częstotliwością i zoperacjonalizować. W tej części możesz użyć dowolnego wybranego IDE obsługującego język Python lub po prostu użyć notatnika Google Colab , który nie wymaga żadnej instalacji na Twoim urządzeniu

Wracając do GA4 Event Builder, zobaczysz, że punkt końcowy jest taki, jak poniżej

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

Ładunek zdarzenia był taki, jak poniżej

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

Możesz przetłumaczyć to na Pythona, używając czegoś takiego

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)

Gdy wykonasz to z właściwymi wartościami, powinieneś podobnie zobaczyć wydarzenie odzwierciedlone w czasie rzeczywistym w GA4.

6. Gratulacje

Gratulacje, pomyślnie użyłeś protokołu pomiarowego w GA4. Teraz możesz tworzyć zaawansowane architektury rozwiązań, aby wysyłać bardziej znaczące dane do Google Analytics i ulepszać swoje analizy marketingowe i biznesowe. Aby to w pełni wykorzystać, sugerujemy również połączenie z Google Ads i zaimportowanie tych zdarzeń jako konwersji. Szczegółowe instrukcje na ten temat można znaleźć w kroku 6 tego ćwiczenia z programowania. Na potrzeby śledzenia konwersji Google Ads będzie wyświetlać tylko dane powiązane z IDFA lub identyfikatorami urządzeń zebranymi z pakietu Firebase SDK w ciągu ostatnich 60 dni. Należy pamiętać, że jest to nadal interfejs API alfa i należy przejść przez wymienione tutaj ograniczenia, które należy rozwiązać przed pełnym uruchomieniem

Nauczyłeś się

  • Jak zebrać odpowiednie zmienne, aby wykonywać połączenia MP
  • Jak wysyłać i weryfikować zdarzenia testowe
  • Jak zbudować skrypt do wysyłania połączeń MP