1. Introduzione
Ultimo aggiornamento: 08-06-2021
Cosa costruirai
In questo codelab imparerai come inviare eventi esterni a GA4 utilizzando Measurement Protocol .
Questo codelab presuppone che tu abbia già implementato un'app con Google Analytics per Firebase. Se vuoi imparare come integrarti con Google Analytics per Firebase, fai prima riferimento a questo codelab . Se vuoi imparare come creare un'app con Firebase, fai riferimento a Firebase Android Codelab-Build Friendly Chat .
Cosa imparerai
- Passaggi per effettuare la tua prima chiamata MP
- Comprendere i parametri richiesti per la chiamata
- Invia e convalida la tua chiamata di prova
- Crea uno script di esempio in Python per effettuare la chiamata
Di cosa avrai bisogno
- La tua app per Android o iOS
- Qualsiasi IDE per apportare modifiche
- Conto GA4
- Facoltativo - Ambiente di sviluppo Python (o Colab )
2. Raccogli i campi obbligatori
Crea segreto API in GA4
Passa a GA4 e crea il tuo nuovo segreto API navigando su Admin > Data Streams > scegli il tuo stream > Measurement Protocol > Crea
Puoi fornire qualsiasi nickname e verrà visualizzato il valore segreto, che puoi utilizzare nella tua chiamata
Nel caso in cui non sei sicuro di come accedere a GA4, puoi visitare il tuo progetto Firebase, controllare Impostazioni progetto > Integrazioni > Google Analytics e fare clic su "Gestisci". La connessione di Google Analytics dovrebbe essere visibile e puoi anche navigare direttamente da lì
Raccogli app_instance_id
Puoi utilizzare uno dei metodi seguenti per raccogliere il tuo app_instance_id.
- Utilizzo di BigQuery Export
- Recupero in modo nativo nel codice sorgente dell'app
Entrambi sono spiegati in dettaglio di seguito
- Utilizzo di BigQuery Export
Se hai abilitato l'esportazione BigQuery , puoi seguire i passaggi seguenti
- Accedi a Firebase
- Passa a Impostazioni progetto > Integrazioni > BigQuery
- Fai clic su "Visualizza in BigQuery" vicino al set di dati
Nota: il set di dati sarà disponibile solo dopo che l'interruttore è stato abilitato per circa 24-48 ore
- In BigQuery, puoi controllare user_pseudo_id nella tabella. Questo è l'app_instance_id che puoi utilizzare nella tua chiamata
- Recupero in modo nativo nel codice sorgente dell'app
Se la tua app è stata creata utilizzando Java, puoi utilizzare qualcosa di simile per recuperare 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();
}
}
});
Per Kotlin, puoi provare quanto segue
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()
Se disponi di un'app iOS, puoi utilizzare quanto segue in 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
*/
Di seguito sono riportati altri collegamenti a seconda della tua infrastruttura
3. Costruire la chiamata
È possibile creare una chiamata di esempio utilizzando Event Builder in GA4. (Ciò richiede l'accesso e l'abilitazione dei cookie). Assicurati che l'interruttore sia impostato su "firebase"
Dovrai compilare i seguenti campi
- api_secret - Già creato in precedenza su GA4
- firebase_app_id - Per ottenere questo, puoi accedere a Admin > Data Streams > scegli il tuo stream . Dovrebbe essere visualizzato come di seguito
- app_instance_id - Hai già recuperato questo valore
- user_id non è obbligatorio. Puoi lasciarlo vuoto per ora
- Categoria: cambia in "Personalizzato" dal menu a discesa e inserisci il nome dell'evento a tua scelta (non utilizzare alcun evento raccolto automaticamente ). Qui stiamo usando "test_from_codelab"
Facoltativamente, puoi anche scegliere di fornire i parametri dell'evento e/o le proprietà dell'utente facendo clic sui pulsanti sottostanti
Dopo aver compilato tutto, dovresti vedere qualcosa del genere, con un pulsante per "Convalida evento"
Una volta raggiunto questo, clicca su "CONVALIDA EVENTO", il pulsante evidenziato in arancione. Dovrebbe visualizzare il messaggio sottostante, specificando che l'evento è valido, e vedrai un pulsante ora "INVIA A GA". A questo punto, se l'evento risulta non valido, lo strumento ti indicherà il campo esatto in cui si è verificato un problema e puoi risolverlo e riprovare
Ora puoi fare clic sul pulsante e dovrebbe inviare un evento di test a GA4
4. Convalida degli eventi in GA4
Dopo aver inviato l'evento, puoi accedere al tuo account GA4 e controllare in tempo reale. Dovresti vedere l'evento arrivare
Potrebbero essere necessarie circa 24 ore prima che gli eventi si propaghino dalla visualizzazione in tempo reale alla scheda di segnalazione degli eventi effettivi, quindi non devi preoccuparti se non lo vedi immediatamente nella normale segnalazione degli eventi!
5. Costruire uno script Python
Ora che l'hai testato, puoi esaminare la chiamata API e il payload dell'evento per creare un'architettura simile in Python (o in qualsiasi linguaggio a tua scelta) in grado di effettuare questa chiamata. È quindi possibile programmarlo alla frequenza desiderata e renderlo operativo. Per questa parte, puoi utilizzare qualsiasi IDE a tua scelta che supporti Python o semplicemente utilizzare un notebook Google Colab che non richiede alcuna installazione sul tuo dispositivo
Facendo riferimento a GA4 Event Builder, vedrai che l'endpoint è il seguente
POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX
HTTP/1.1
Host: www.google-analytics.com
Il carico utile dell'evento era il seguente
{
"app_instance_id": XXXX,
"non_personalized_ads": false,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
Puoi tradurlo in Python usando qualcosa del genere
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)
Dopo averlo eseguito con i valori corretti, dovresti vedere l'evento riflettersi in tempo reale in GA4 in modo simile.
6. Congratulazioni
Congratulazioni, hai utilizzato con successo Measurement Protocol in GA4. Ora puoi creare potenti architetture di soluzioni per inviare dati più significativi a Google Analytics e migliorare le tue analisi di marketing e business. Per sfruttare al meglio tutto ciò, ti suggeriamo anche di connetterti a Google Ads e di importare questi eventi come conversioni. Puoi fare riferimento al passaggio 6 in questo codelab per istruzioni dettagliate al riguardo. Ai fini del monitoraggio delle conversioni, Google Ads mostrerà solo i dati associati all'IDFA o agli ID dispositivo raccolti dall'SDK Firebase negli ultimi 60 giorni. Tieni presente che questa è ancora un'API alfa e assicurati di superare le limitazioni elencate qui che dovrebbero essere risolte prima del lancio completo
Hai imparato
- Come raccogliere le variabili giuste per effettuare chiamate MP
- Come inviare e convalidare eventi di test
- Come creare uno script per inviare chiamate MP