1. Introduzione
Ultimo aggiornamento: 2021-06-08
Cosa costruirai
In questo codelab imparerai come inviare eventi esterni a GA4 utilizzando il protocollo di misurazione .
Questo codelab presuppone che tu abbia già implementato un'app con Google Analytics per Firebase. Se desideri sapere come eseguire l'integrazione 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 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 Android o iOS
- Qualsiasi IDE per apportare modifiche
- Conto GA4
- Facoltativo: ambiente di sviluppo Python (o Colab )
2. Raccogli i campi obbligatori
Crea il segreto API in GA4
Passa a GA4 e crea il tuo nuovo segreto API accedendo ad Amministrazione > Stream di dati > scegli il tuo flusso > Measurement Protocol > Crea
Puoi fornire qualsiasi nickname e verrà visualizzato il valore segreto, che potrai utilizzare nella tua chiamata
Se 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 a Google Analytics dovrebbe essere visibile e puoi navigare direttamente anche 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
- Vai a Impostazioni progetto > Integrazioni > BigQuery
- Fai clic su "Visualizza in BigQuery" accanto 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 verificare la presenza di user_pseudo_id nella tabella. Questo è l'app_instance_id che puoi utilizzare nella 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 più collegamenti a seconda della tua infrastruttura
3. Costruire la chiamata
Puoi creare una chiamata di esempio utilizzando il generatore di eventi in GA4. (Ciò richiede che tu effettui il login e che i cookie siano abilitati). 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 ad Amministrazione > Flussi di dati > scegli il tuo flusso . Dovrebbe essere visualizzato come di seguito
- app_instance_id: hai già recuperato questo valore
- user_id non è obbligatorio. Puoi lasciarlo vuoto per ora
- Categoria: modificala in "Personalizzato" dal menu a discesa e inserisci il nome dell'evento di tua scelta (non utilizzare alcun evento raccolto automaticamente ). Qui stiamo usando "test_from_codelab"
Facoltativamente, puoi anche scegliere di fornire parametri evento e/o proprietà utente facendo clic sui pulsanti seguenti
Una volta compilato tutto, dovresti vedere qualcosa di simile a questo, con un pulsante per "Convalidare evento"
Una volta raggiunto questo, clicca su "CONVALIDA EVENTO", il pulsante evidenziato in arancione. Dovrebbe essere visualizzato il messaggio seguente, specificando che l'evento è valido, e ora vedrai un pulsante "INVIA A GA". A questo punto, se l'evento risulta non valido, lo strumento ti indicherà il campo esatto in cui si è verificato il problema e potrai risolverlo e riprovare
Ora puoi fare clic sul pulsante e dovrebbe inviare un evento di prova a GA4
4. Convalida degli eventi in GA4
Una volta 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 affinché gli eventi si propaghino dalla visualizzazione in tempo reale alla scheda di reporting degli eventi effettivi, quindi non devi preoccuparti se non lo vedi immediatamente nei normali report degli eventi!
Se riscontri problemi o discrepanze, potrebbe essere utile verificare qui le limitazioni note del protocollo di misurazione
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 di tua scelta) in grado di effettuare questa chiamata. È quindi possibile programmarlo con la frequenza desiderata e renderlo operativo. Per questa parte, puoi utilizzare qualsiasi IDE di tua scelta che supporti Python o semplicemente utilizzare un notebook Google Colab che non richiede alcuna installazione sul tuo dispositivo
Facendo riferimento al Generatore di eventi GA4, 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 payload 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 di simile
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)
Una volta eseguito questo con i valori corretti, dovresti vedere allo stesso modo l'evento riflesso in tempo reale in GA4.
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 analisi di marketing e aziendali. Per sfruttare al meglio tutto ciò, suggeriamo anche di collegarsi a Google Ads e di importare questi eventi come conversioni. Puoi fare riferimento al passaggio 6 di 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 alpha 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