1. Wstęp
Ostatnia aktualizacja: 2021-06-08
Co zbudujesz
W tych ćwiczeniach z programowania dowiesz się, jak wysyłać zdarzenia zewnętrzne do GA4 przy użyciu protokołu Measurement Protocol .
W tym ćwiczeniu z programowania założono, że masz już zaimplementowaną aplikację z Google Analytics dla Firebase. Jeśli chcesz dowiedzieć się, jak zintegrować się z Google Analytics dla Firebase, zapoznaj się najpierw z tym ćwiczeniem z programowania . Jeśli chcesz dowiedzieć się, jak zbudować aplikację za pomocą Firebase, zapoznaj się z przyjazną budową czatu Firebase Android Codelab .
Czego się dowiesz
- Kroki, aby wykonać pierwsze połączenie MP
- Zapoznaj się z parametrami wymaganymi do połączenia
- Wyślij i zatwierdź połączenie testowe
- Zbuduj przykładowy skrypt w Pythonie, aby wykonać połączenie
Co będziesz potrzebował
- Twoja aplikacja na Androida lub iOS
- Dowolne IDE do wprowadzenia zmian
- Konto GA4
- Opcjonalnie — środowisko programistyczne Python (lub Colab )
2. Zbierz pola obowiązkowe
Utwórz sekret API w GA4
Przejdź do GA4 i utwórz nowy klucz tajny API, wybierając kolejno Administracja > Strumienie danych > wybierz strumień > Protokół pomiarowy > Utwórz
Możesz podać dowolny pseudonim, wyświetli się tajna wartość, którą możesz wykorzystać 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 można z niego bezpośrednio nawigować
Zbierz identyfikator_instancji aplikacji
Możesz użyć dowolnej z poniższych metod, aby zebrać identyfikator_instancji_aplikacji.
- Korzystanie z BigQuery Export
- Pobieranie natywne w kodzie źródłowym aplikacji
Obydwa zostały szczegółowo wyjaśnione poniżej
- Korzystanie z BigQuery Export
Jeśli masz włączony eksport BigQuery , możesz wykonać poniższe kroki
- Zaloguj się do Firebase
- Przejdź do 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ć w tabeli user_pseudo_id. To jest app_instance_id, którego możesz użyć w swoim połączeniu
- Pobieranie natywne w kodzie źródłowym aplikacji
Jeśli Twoja aplikacja jest zbudowana przy użyciu języka Java, możesz użyć czegoś takiego, 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 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żywać 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 infrastruktury
3. Konstruowanie rozmowy
Możesz utworzyć przykładowe wywołanie, korzystając z Kreatora zdarzeń w GA4. (Wymaga to zalogowania się i włączenia obsługi plików cookie). Upewnij się, że przełącznik jest ustawiony na „firebase”
Będziesz musiał wypełnić następujące pola
- api_secret — Utworzono już wcześniej na GA4
- firebase_app_id — aby to uzyskać, możesz przejść do opcji Administrator > Strumienie danych > wybierz swój strumień . Powinno wyświetlić się jak poniżej
- app_instance_id — już pobrałeś tę wartość
- user_id nie jest obowiązkowy. Na razie możesz pozostawić to pole puste
- Kategoria — zmień tę opcję na „Niestandardowe” z menu rozwijanego i wpisz dowolną wybraną nazwę wydarzenia (nie używaj żadnego zdarzenia zbieranego automatycznie ). Tutaj używamy „test_from_codelab”
Opcjonalnie możesz także podać parametry zdarzenia i/lub właściwości użytkownika, klikając poniższe przyciski
Po wypełnieniu wszystkiego powinieneś zobaczyć coś takiego z przyciskiem „Zatwierdź wydarzenie”
Gdy dojdziesz do tego, kliknij „WALIDACJA ZDARZENIA”, przycisk podświetlony na pomarańczowo. Powinien wyświetlić poniższy komunikat, określający, że zdarzenie jest ważne, a teraz zobaczysz przycisk „WYŚLIJ DO GA”. W tym momencie, jeśli zdarzenie okaże się nieprawidłowe, narzędzie wskaże dokładne pole, w którym występuje problem, możesz to naprawić i spróbować ponownie
Możesz teraz kliknąć przycisk, który powinien wysłać zdarzenie testowe do GA4
4. Walidacja zdarzeń w GA4
Po wysłaniu wydarzenia możesz przejść do swojego konta GA4 i sprawdzić opcję Czas rzeczywisty. Powinieneś zobaczyć, jak wydarzenie dobiegło końca
Przeniesienie wydarzeń z widoku czasu rzeczywistego do karty raportowania rzeczywistych wydarzeń może zająć około 24 godzin, więc nie musisz się martwić, jeśli nie zobaczysz tego natychmiast w zwykłym raportowaniu wydarzeń!
Jeśli napotkasz problemy lub rozbieżności, przydatne może być sprawdzenie znanych ograniczeń protokołu pomiarowego tutaj
5. Budowanie skryptu w Pythonie
Teraz, gdy już to przetestowałeś, możesz sprawdzić wywołanie interfejsu API i ładunek zdarzenia, aby zbudować podobną architekturę w Pythonie (lub w dowolnym wybranym języku), która będzie w stanie 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 Pythona lub po prostu użyć notatnika Google Colab , który nie wymaga żadnej instalacji na Twoim urządzeniu
Wracając do Kreatora zdarzeń GA4, zobaczysz, że punkt końcowy wygląda jak poniżej
POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX
HTTP/1.1
Host: www.google-analytics.com
Ładunek zdarzenia był następujący
{
"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ć odzwierciedlenie zdarzenia w czasie rzeczywistym w GA4.
6. Gratulacje
Gratulacje, pomyślnie użyłeś protokołu pomiaru 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 jak najlepiej to wykorzystać, sugerujemy również połączenie się z Google Ads i zaimportowanie tych zdarzeń jako konwersji. Szczegółowe instrukcje na ten temat można znaleźć w kroku 6 w tym ćwiczeniu z kodowania . Na potrzeby śledzenia konwersji Google Ads będzie wyświetlać tylko dane powiązane z identyfikatorem IDFA lub identyfikatorami urządzeń zebranymi z pakietu SDK Firebase w ciągu ostatnich 60 dni. Pamiętaj, że jest to nadal interfejs API w wersji alfa i pamiętaj o zapoznaniu się z wymienionymi tutaj ograniczeniami, którymi należy się zająć przed pełnym uruchomieniem
Nauczyłeś się
- Jak zebrać odpowiednie zmienne, aby wykonać wywołania MP
- Jak wysyłać i sprawdzać zdarzenia testowe
- Jak zbudować skrypt do wysyłania połączeń MP