1. Wprowadzenie
Ostatnia aktualizacja: 2021-06-08
Co utworzysz
Z tego ćwiczenia dowiesz się, jak wysyłać zdarzenia zewnętrzne do GA4 za pomocą Measurement Protocol.
Zakładamy, że masz już aplikację z wdrożoną usługą Google Analytics dla Firebase. Jeśli chcesz dowiedzieć się, jak zintegrować usługę z Google Analytics dla Firebase, najpierw zapoznaj się z tym kursem. Jeśli chcesz dowiedzieć się, jak tworzyć aplikacje za pomocą Firebase, zapoznaj się z ćwiczeniem dotyczącym Firebase na Androida – tworzenie przyjaznego czatu.
Czego się nauczysz
- Jak wykonać pierwsze wywołanie Measurement Protocol
- Zapoznanie z parametrami wymaganymi na potrzeby wywołania
- Wysyłanie i weryfikowanie wywołania testowego
- Utwórz przykładowy skrypt w Pythonie, aby wykonać połączenie
Czego potrzebujesz
- Aplikacja na Androida lub iOS
- dowolne środowisko IDE do wprowadzania zmian;
- Konto GA4
- Opcjonalnie – środowisko programistyczne Pythona (lub Colab)
2. Zbieranie pól obowiązkowych
Tworzenie tajnego klucza API w GA4
Otwórz GA4 i utwórz nowy tajny klucz API. W tym celu kliknij Administracja > Strumienie danych > wybierz swój strumień > Measurement Protocol > Utwórz.



Możesz podać dowolny pseudonim, a wyświetli się wartość obiektu tajnego, której możesz użyć w wywołaniu.
Jeśli nie wiesz, jak uzyskać dostęp do GA4, otwórz projekt Firebase, kliknij kolejno Ustawienia projektu > Integracje > Google Analytics i kliknij „Zarządzaj”. Połączenie z Google Analytics powinno być widoczne. Możesz też przejść bezpośrednio z tego miejsca.

Zbieranie identyfikatora instancji aplikacji
Aby zebrać identyfikator instancji aplikacji, możesz użyć dowolnej z tych metod.
- Korzystanie z BigQuery Export
- Pobieranie natywne w kodzie źródłowym aplikacji
Obie te metody zostały szczegółowo opisane poniżej.
- Korzystanie z BigQuery Export
Jeśli masz włączoną funkcję BigQuery Export , możesz wykonać poniższe czynności.
- Logowanie w Firebase
- Kliknij Ustawienia projektu > Integracje > BigQuery.
- Kliknij „Wyświetl w BigQuery” obok zbioru danych.
Uwaga : zbiór danych będzie dostępny dopiero po włączeniu przełącznika na około 24–48 godzin.

- W BigQuery możesz sprawdzić, czy w tabeli znajduje się identyfikator user_pseudo_id. Jest to identyfikator app_instance_id, którego możesz użyć w wywołaniu.

- Pobieranie natywne w kodzie źródłowym aplikacji
Jeśli Twoja aplikacja jest napisana w Javie, możesz użyć tego kodu, aby pobrać identyfikator instancji aplikacji:
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 języka Kotlin możesz wypróbować poniższe rozwiązanie.
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ć w niej tego kodu w języku 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 znajdziesz więcej linków w zależności od infrastruktury.
3. Tworzenie połączenia
Przykładowe wywołanie możesz utworzyć w GA4 za pomocą narzędzia Event Builder. (w tym celu musisz się zalogować i mieć włączone pliki cookie). Upewnij się, że przełącznik znajduje się w położeniu „firebase”.

Musisz wypełnić te pola:
- api_secret – utworzony wcześniej w GA4
- firebase_app_id – aby uzyskać ten parametr, kliknij Administracja > Strumienie danych > wybierz swój strumień . Powinien on wyglądać tak:

- app_instance_id – ta wartość została już przez Ciebie pobrana.
- Identyfikator użytkownika nie jest obowiązkowy. Możesz na razie pozostawić to pole puste.
- Kategoria – w menu wybierz „Niestandardowe” i wpisz dowolną nazwę zdarzenia (nie używaj żadnego zdarzenia zbieranego automatycznie). W tym przypadku używamy nazwy „test_from_codelab”.

Opcjonalnie możesz też podać parametry zdarzenia lub właściwości użytkownika, klikając przyciski poniżej.

Po wypełnieniu wszystkich pól powinna pojawić się tabela podobna do tej poniżej z przyciskiem „Sprawdź wydarzenie”.

Gdy to zrobisz, kliknij przycisk „SPRAWDŹ ZDARZENIE” (wyróżniony na pomarańczowo). Powinien wyświetlić się komunikat poniżej, informujący, że zdarzenie jest prawidłowe, oraz przycisk „WYŚLIJ DO GA”. Jeśli w tym momencie zdarzenie zostanie uznane za nieprawidłowe, narzędzie wskaże dokładne pole, w którym występuje problem. Możesz go rozwiązać i spróbować ponownie.

Teraz możesz kliknąć przycisk. Powinno to spowodować wysłanie zdarzenia testowego do GA4.
4. Weryfikowanie zdarzeń w GA4
Po wysłaniu zdarzenia możesz przejść na konto GA4 i sprawdzić raport Czas rzeczywisty. Powinno pojawić się zdarzenie.

Zanim zdarzenia zostaną przeniesione z widoku w czasie rzeczywistym na kartę raportowania zdarzeń, może minąć około 24 godzin, więc nie musisz się martwić, jeśli nie zobaczysz ich od razu w raportowaniu zdarzeń.
Jeśli masz problemy lub zauważysz rozbieżności, warto zapoznać się z ograniczeniami platformy Measurement Protocol.
5. Tworzenie skryptu w Pythonie
Po przetestowaniu możesz sprawdzić wywołanie interfejsu API i ładunek zdarzenia, aby utworzyć podobną architekturę w Pythonie (lub w dowolnym innym języku), która będzie mogła wykonywać to wywołanie. Możesz następnie zaplanować to działanie z wybraną częstotliwością i wdrożyć je w praktyce. W tej części możesz użyć dowolnego środowiska IDE obsługującego język Python lub po prostu notatnika Google Colab, który nie wymaga instalacji na urządzeniu.
W narzędziu do tworzenia zdarzeń GA4 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 wyglądał tak:
{
"app_instance_id": XXXX,
"non_personalized_ads": false,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
Możesz to przetłumaczyć 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 działanie z odpowiednimi wartościami, zdarzenie powinno być widoczne w GA4 w czasie rzeczywistym.
6. Gratulacje
Gratulacje! Udało Ci się użyć Measurement Protocol w GA4. Możesz teraz tworzyć zaawansowane architektury rozwiązań, aby wysyłać do Google Analytics bardziej przydatne dane i ulepszać analizy marketingowe i biznesowe. Aby w pełni wykorzystać tę funkcję, zalecamy też połączenie z Google Ads i zaimportowanie tych zdarzeń jako konwersji. Szczegółowe instrukcje znajdziesz w kroku 6 w tym ćwiczeniu z programowania. Na potrzeby śledzenia konwersji Google Ads będzie wyświetlać tylko dane powiązane z identyfikatorami IDFA lub identyfikatorami urządzeń zebranymi w ciągu ostatnich 60 dni za pomocą pakietu SDK Firebase. Pamiętaj, że to wciąż interfejs API w wersji alfa. Zapoznaj się z ograniczeniami wymienionymi tutaj , które powinny zostać rozwiązane przed pełnym wdrożeniem.
Czego się nauczysz
- Jak zbierać odpowiednie zmienne do wykonywania połączeń MP
- Wysyłanie i weryfikowanie zdarzeń testowych
- Jak utworzyć skrypt do wysyłania połączeń MP