Envoyer des événements d'application à GA4 à l'aide du protocole de mesure

1. Introduction

Dernière mise à jour : 2021-06-08

Ce que vous construirez

Dans cet atelier de programmation, vous apprendrez à envoyer des événements externes à GA4 à l'aide du protocole de mesure .

Cet atelier de programmation suppose que vous disposez déjà d'une application avec Google Analytics pour Firebase implémentée. Si vous souhaitez savoir comment intégrer Google Analytics pour Firebase, veuillez d'abord vous référer à cet atelier de programmation . Si vous souhaitez apprendre à créer une application avec Firebase, veuillez vous référer à Firebase Android Codelab-Build Friendly Chat .

Ce que vous apprendrez

  • Étapes pour passer votre premier appel MP
  • Comprendre les paramètres requis pour l'appel
  • Envoyez et validez votre appel test
  • Créez un exemple de script en Python pour effectuer l'appel

Ce dont vous aurez besoin

  • Votre application Android ou iOS
  • N'importe quel IDE pour apporter des modifications
  • Compte GA4
  • Facultatif - Environnement de développement Python (ou Colab )

2. Collectez les champs obligatoires

Créer un secret API dans GA4

Accédez à GA4 et créez votre nouveau secret API en accédant à Admin > Flux de données > choisissez votre flux > Protocole de mesure > Créer

6e4afca63054d291.png

c9e9ccd2ffba98eb.png

e714cd969fca4a4d.png

Vous pouvez fournir n'importe quel pseudo et la valeur secrète sera affichée, que vous pourrez utiliser lors de votre appel.

Si vous ne savez pas comment accéder à GA4, vous pouvez visiter votre projet Firebase, vérifier Paramètres du projet > Intégrations > Google Analytics et cliquer sur « Gérer ». La connexion Google Analytics doit être visible et vous pouvez également naviguer directement à partir de là.

73b4d77a57eddfba.png

Collecter app_instance_id

Vous pouvez utiliser l'une des méthodes ci-dessous pour collecter votre app_instance_id.

  1. Utiliser BigQuery Export
  2. Récupération native dans le code source de votre application

Ces deux éléments sont expliqués en détail ci-dessous

  1. Utiliser BigQuery Export

Si l'exportation BigQuery est activée, vous pouvez suivre les étapes ci-dessous

  • Connectez-vous à Firebase
  • Accédez à Paramètres du projet > Intégrations > BigQuery
  • Cliquez sur "Afficher dans BigQuery" à côté de l'ensemble de données

Remarque : l'ensemble de données ne sera disponible qu'une fois la bascule activée pendant environ 24 à 48 heures.

63d061088b622961.png

  • Dans BigQuery, vous pouvez rechercher user_pseudo_id dans le tableau. Il s'agit de l'app_instance_id que vous pouvez utiliser dans votre appel

4b1b80bdc2884581.png

  1. Récupération native dans le code source de votre application

Si votre application est créée à l'aide de Java, vous pouvez utiliser quelque chose comme ceci pour récupérer l'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();
            }
        }
    });

Pour Kotlin, vous pouvez essayer ce qui suit

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()

Si vous disposez d'une application iOS, vous pouvez utiliser les éléments suivants dans 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
*/

Vous trouverez ci-dessous plus de liens en fonction de votre infrastructure

3. Construire l'appel

Vous pouvez créer un exemple d'appel à l'aide du générateur d'événements dans GA4. (Cela nécessite que vous vous connectiez et que les cookies soient activés). Assurez-vous que la bascule est réglée sur "firebase"

fd78d961f3e48238.png

Vous devrez remplir les champs suivants

  • api_secret - Déjà créé plus tôt sur GA4
  • firebase_app_id - Pour l'obtenir, vous pouvez accéder à Admin > Data Streams > choisir votre flux . Il devrait être affiché comme ci-dessous

19801c8e5cb29222.png

  • app_instance_id - Vous avez déjà récupéré cette valeur
  • user_id n'est pas obligatoire. Vous pouvez le laisser vide pour l'instant
  • Catégorie : remplacez-le par "Personnalisé" dans la liste déroulante et indiquez le nom de l'événement de votre choix (n'utilisez aucun événement collecté automatiquement ). Ici, nous utilisons "test_from_codelab"

54cce53df64d697.png

En option, vous pouvez également choisir de fournir des paramètres d'événement et/ou des propriétés utilisateur en cliquant sur les boutons ci-dessous.

16a8f531a3894021.png

Une fois que vous avez tout rempli, vous devriez voir quelque chose comme ceci, avec un bouton pour "Valider l'événement".

475801f25c3caf26.png

Une fois arrivé à cet endroit, cliquez sur "VALIDER L'ÉVÉNEMENT", le bouton surligné en orange. Il devrait afficher le message ci-dessous, spécifiant que l'événement est valide, et vous verrez un bouton pour maintenant "ENVOYER À GA". À ce stade, si l'événement s'avère invalide, l'outil vous indiquera le champ exact dans lequel il y a un problème, et vous pourrez résoudre ce problème et réessayer.

23e4e6800705b4aa.png

Vous pouvez maintenant cliquer sur le bouton, et il devrait envoyer un événement test à GA4

4. Validation des événements dans GA4

Une fois que vous avez envoyé l'événement, vous pouvez accéder à votre compte GA4 et vérifier Realtime. Vous devriez voir l'événement se réaliser

994b51ca46bb1973.png

Cela peut prendre environ 24 heures pour que les événements se propagent de la vue en temps réel à l'onglet de rapport d'événements réels, donc ne vous inquiétez pas si vous ne le voyez pas immédiatement dans le rapport d'événements régulier !

Si vous rencontrez des problèmes ou des divergences, il peut être utile de consulter les limites connues du protocole de mesure ici.

5. Construire un script Python

Maintenant que vous l'avez testé, vous pouvez examiner l'appel d'API et la charge utile de l'événement pour créer une architecture similaire en Python (ou dans n'importe quel langage de votre choix) capable d'effectuer cet appel. Vous pouvez ensuite planifier cela à la fréquence souhaitée et le rendre opérationnel. Pour cette partie, vous pouvez soit utiliser n'importe quel IDE de votre choix prenant en charge Python, soit simplement utiliser un notebook Google Colab qui ne nécessite aucune installation sur votre appareil.

En revenant au GA4 Event Builder, vous verrez que le point de terminaison est le suivant :

POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX 
HTTP/1.1
Host: www.google-analytics.com

La charge utile de l'événement était la suivante

{
  "app_instance_id": XXXX,
  "non_personalized_ads": false,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}

Vous pouvez traduire cela en python en utilisant quelque chose comme ceci

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)

Une fois que vous avez exécuté cette opération avec les bonnes valeurs, vous devriez également voir l'événement se refléter en temps réel dans GA4.

6. Félicitations

Félicitations, vous avez utilisé avec succès le protocole de mesure dans GA4. Vous pouvez désormais créer des architectures de solutions puissantes pour envoyer des données plus significatives à Google Analytics et améliorer vos analyses marketing et commerciales. Afin d'en tirer le meilleur parti, nous vous suggérons également de vous connecter à Google Ads et d'importer ces événements en tant que conversions. Vous pouvez vous référer à l'étape 6 de cet atelier de programmation pour obtenir des instructions détaillées à ce sujet. À des fins de suivi des conversions, Google Ads affichera uniquement les données associées aux IDFA ou aux identifiants d'appareil collectés à partir du SDK Firebase au cours des 60 derniers jours. Gardez à l'esprit qu'il s'agit toujours d'une API alpha et assurez-vous de respecter les limitations répertoriées ici qui doivent être résolues avant le lancement complet.

Vous avez appris

  • Comment collecter les bonnes variables pour passer des appels MP
  • Comment envoyer et valider des événements de test
  • Comment créer un script pour envoyer des appels MP