1. Wprowadzenie
Ostatnia aktualizacja: 8.06.2021
Co utworzysz
Z tego ćwiczenia w Codelabs dowiesz się, jak wysyłać zdarzenia zewnętrzne do GA4 za pomocą platformy Measurement Protocol.
W tym ćwiczeniu w Codelabs zakładamy, że masz już aplikację z wdrożoną aplikacją Google Analytics dla Firebase. Jeśli chcesz dowiedzieć się, jak przeprowadzić integrację z Google Analytics dla Firebase, zapoznaj się najpierw z tym ćwiczeniem z programowania. Jeśli chcesz dowiedzieć się, jak tworzyć aplikacje za pomocą Firebase, zapoznaj się z czatem ułatwiającym tworzenie aplikacji na Androida w Firebase.
Czego się nauczysz
- Kroki do wykonania pierwszego połączenia w formacie MP
- Omówienie parametrów wymaganych do wywołania
- Wysyłanie i weryfikacja rozmowy testowej
- Tworzenie przykładowego skryptu w Pythonie w celu wywołania
Czego potrzebujesz
- Twoja aplikacja na Androida lub iOS
- Dowolne IDE do wprowadzania zmian
- Konto GA4
- Opcjonalnie – środowisko programistyczne Pythona (lub Colab)
2. Uzupełnij pola obowiązkowe
Tworzenie obiektu tajnego API w GA4
Przejdź do GA4 i utwórz nowy tajny klucz API. W tym celu kliknij Administracja > Strumienie danych > wybierz transmisję > Measurement Protocol > Utwórz
Możesz podać dowolny pseudonim, a zostanie wyświetlona wartość obiektu tajnego, której możesz użyć podczas rozmowy.
Jeśli nie wiesz, jak uzyskać dostęp do GA4, możesz otworzyć swój projekt Firebase, w sekcji Ustawienia projektu > Integracje > Google Analytics i kliknij „Zarządzaj”. Połączenie z Google Analytics powinno być widoczne i możesz przechodzić bezpośrednio z niego.
Zbieraj dane app_instance_id
Identyfikator app_instance_id możesz zbierać za pomocą dowolnej z poniższych metod.
- Korzystanie z BigQuery Export
- Natywne pobieranie w kodzie źródłowym aplikacji
Oba te modele zostały szczegółowo wyjaśnione poniżej.
- Korzystanie z BigQuery Export
Jeśli masz włączony BigQuery Export , wykonaj poniższe czynności.
- Zaloguj się w Firebase
- Otwórz Ustawienia projektu > Integracje > BigQuery
- Kliknij „Wyświetl w BigQuery”. w pobliżu zbioru danych
Uwaga : zbiór danych będzie dostępny dopiero po włączeniu przełącznika od około 24–48 godzin
- W BigQuery możesz sprawdzić w tabeli parametr user_pseudo_id. Jest to identyfikator app_instance_id, którego możesz użyć w wywołaniu.
- Natywne pobieranie w kodzie źródłowym aplikacji
Jeśli Twoja aplikacja została utworzona w języku Java, możesz pobrać parametr 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 Kotlin możesz wypróbować poniższe rozwiązania
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 Swift tych elementów:
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 zależnie od Twojej infrastruktury
3. Tworzenie rozmowy
Możesz utworzyć przykładowe wywołanie za pomocą Kreatora zdarzeń w GA4. (Aby to zrobić, należy się zalogować i włączyć obsługę plików cookie). Upewnij się, że przełącznik jest ustawiony na „firebase”
Musisz wypełnić następujące pola
- api_secret – został już utworzony wcześniej w GA4.
- firebase_app_id – aby je pobrać, kliknij Administracja > Strumienie danych > wybierz transmisję . Powinien wyglądać tak jak poniżej.
- app_instance_id – ta wartość została już pobrana
- Parametr user_id nie jest wymagany. Możesz na razie zostawić to pole puste
- Kategoria – zmień na „Niestandardowa” i wpisz dowolną nazwę zdarzenia (nie używaj żadnego zdarzenia zbieranego automatycznie). Tutaj używamy parametru „test_from_codelab”
Opcjonalnie możesz też podać parametry zdarzenia lub właściwości użytkownika, klikając przyciski poniżej
Gdy wypełnisz wszystkie pola, zobaczysz coś takiego z przyciskiem „Sprawdź zdarzenie”.
Gdy to zrobisz, kliknij „SPRAWDŹ WYDARZENIE”. , przycisk jest wyróżniony na pomarańczowo. Powinien wyświetlić się komunikat poniżej z informacją, że zdarzenie jest prawidłowe. Powinien pojawić się przycisk „WYŚLIJ DO GA”. Jeśli na tym etapie zdarzenie okaże się nieprawidłowe, narzędzie poda dokładne pole, w którym występuje problem, co umożliwi Ci naprawienie tego błędu i spróbowanie jeszcze raz.
Możesz już kliknąć ten przycisk. Powinien on wysłać zdarzenie testowe do GA4.
4. Weryfikowanie zdarzeń w GA4
Po wysłaniu zdarzenia możesz przejść na swoje konto GA4 i sprawdzić dane w czasie rzeczywistym. Powinno wyświetlić się zdarzenie.
Rozpowszechnienie zdarzeń z widoku w czasie rzeczywistym na karcie raportowania zdarzeń może potrwać do 24 godzin, więc nie martw się, jeśli nie pojawi się on od razu w standardowych raportach o zdarzeniach.
Jeśli masz problemy lub rozbieżności, zapoznaj się ze znanymi ograniczeniami platformy Measurement Protocol.
5. Tworzenie skryptu Pythona
Po przetestowaniu tego interfejsu możesz sprawdzić wywołanie interfejsu API i ładunek zdarzenia, aby utworzyć podobną architekturę w Pythonie (lub w dowolnym wybranym języku), która obsługuje to wywołanie. Możesz potem zaplanować tę częstotliwość i wdrożyć ją z wybraną częstotliwością. W tej części możesz użyć dowolnego IDE obsługującego Pythona lub po prostu notatnika Google Colab, który nie wymaga instalacji na urządzeniu.
W Kreatorze zdarzeń GA4 znajdziesz punkt końcowy przedstawiony 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 kodu podobnego do tego:
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 kod z właściwymi wartościami, zdarzenie powinno być również odzwierciedlane w czasie rzeczywistym w GA4.
6. Gratulacje
Gratulujemy korzystania z platformy Measurement Protocol w GA4. Możesz teraz tworzyć zaawansowane architektury rozwiązań, które pozwalają wysyłać do Google Analytics bardziej przydatne dane oraz ulepszać analitykę biznesową i marketingową. Aby w pełni wykorzystać możliwości, warto też połączyć się z Google Ads i zaimportować te zdarzenia jako konwersje. Szczegółowe instrukcje znajdziesz w kroku 6 w tym ćwiczeniu z programowania. Na potrzeby śledzenia konwersji Google Ads wyświetla tylko dane powiązane z IDFA lub identyfikatorami urządzeń zebrane przez pakiet SDK Firebase w ciągu ostatnich 60 dni. Pamiętaj, że nadal jest to interfejs alfa. Musisz zapoznać się z ograniczeniami podanymi tutaj , które należy rozwiązać przed pełnym wdrożeniem.
Wiesz już
- Jak zbierać odpowiednie zmienne, aby wykonywać wywołania MP
- Jak wysyłać i weryfikować zdarzenia testowe
- Jak utworzyć skrypt do wysyłania wywołań w formacie MP