Mesure des campagnes – SDK Android

Ce document explique comment mesurer les campagnes et les sources de trafic avec le SDK Google Analytics pour Android v3.

Présentation

Mesurer les campagnes dans Google Analytics permet d'attribuer les campagnes et les sources de trafic à l'activité des utilisateurs dans votre application. Ces options sont disponibles pour l'attribution des campagnes et des sources de trafic dans le SDK Google Analytics pour Android:

Les sections suivantes décrivent quand et comment implémenter chaque type de mesure de campagne dans votre application.

Paramètres des campagnes

Les paramètres de campagne permettent de transmettre des informations sur les sources de trafic et les campagnes qui redirigent les utilisateurs vers votre application.

Le tableau ci-dessous contient les paramètres de campagne disponibles pouvant être utilisés dans Google Play ou dans la mesure générale des campagnes:

Paramètres Description Exemple(s)
utm_campaign Nom de la campagne ; utilisé pour l'analyse des mots clés afin d'identifier une campagne stratégique ou une promotion spécifique sur un produit utm_campaign=spring_sale
utm_source Source de la campagne : utilisée pour identifier un moteur de recherche, une newsletter ou une autre source utm_source=google
utm_medium Support de la campagne : utilisé pour identifier un support tel qu'un e-mail ou un coût par clic (CPC) utm_medium=cpc
utm_term Terme de la campagne : utilisé avec la recherche sponsorisée pour fournir les mots clés des annonces utm_term=running+shoes
utm_content Contenu de la campagne ; utilisé pour les tests A/B et les annonces ciblées sur le contenu afin de différencier les annonces ou liens qui renvoient vers la même URL utm_content=logolink
utm_content=textlink
gclid Paramètre de taggage automatique Google Ads (utilisé pour mesurer les annonces). Cette valeur est générée dynamiquement et ne doit jamais être modifiée.

Attribution générale des campagnes et des sources de trafic

Une fois qu'une application a été installée, elle peut être lancée par le biais de sites référents à partir de campagnes publicitaires, de sites Web ou d'autres applications. Dans ce scénario, les sources de trafic référentes ou les campagnes marketing peuvent être attribuées à l'activité de l'utilisateur au cours des sessions suivantes en définissant les champs de la campagne directement sur un outil de suivi.

Par exemple, l'implémentation suivante vérifie l'intent qui a lancé l'application pour les paramètres de campagne Google Analytics:

package com.example.app;

import com.google.analytics.tracking.android.Fields;
import com.google.analytics.tracking.android.GoogleAnalytics;
import com.google.analytics.tracking.android.MapBuilder;
import com.google.analytics.tracking.android.Tracker;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

import java.util.Map;

/*
 * An example of how to implement general campaign attribution in Android.
 *
 * If the intent that launched the Activity has a URI, parse it for campaign
 * parameters and send the referring data to Google Analytics.
 */
public class MainActivity extends Activity {

  private static final String GA_PROPERTY_ID = "UA-XXXX-Y";
  private static final String SCREEN_LABEL = "Home Screen";

  // This examples assumes the use of Google Analytics campaign
  // "utm" parameters, like "utm_source".
  private static final String CAMPAIGN_SOURCE_PARAM = "utm_source";

  Tracker mTracker;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mTracker = GoogleAnalytics.getInstance(this).getTracker(GA_PROPERTY_ID);
  }

  @Override
  public void onStart() {
    super.onStart();

    // Set screen name on tracker so that all subsequent hits will use this
    // value.
    mTracker.set(Fields.SCREEN_NAME, SCREEN_LABEL);

    // Get the intent that started this Activity.
    Intent intent = this.getIntent();
    Uri uri = intent.getData();

    // Send a screenview using any available campaign or referrer data.
    MapBuilder.createAppView().setAll(getReferrerMapFromUri(uri));
  }

  /*
   * Given a URI, returns a map of campaign data that can be sent with
   * any GA hit.
   *
   * @param uri A hierarchical URI that may or may not have campaign data
   *     stored in query parameters.
   *
   * @return A map that may contain campaign or referrer
   *     that may be sent with any Google Analytics hit.
   */
  Map<String,String> getReferrerMapFromUri(Uri uri) {

    MapBuilder paramMap = new MapBuilder();

    // If no URI, return an empty Map.
    if (uri == null) { return paramMap.build(); }

    // Source is the only required campaign field. No need to continue if not
    // present.
    if (uri.getQueryParameter(CAMPAIGN_SOURCE_PARAM) != null) {

      // MapBuilder.setCampaignParamsFromUrl parses Google Analytics campaign
      // ("UTM") parameters from a string URL into a Map that can be set on
      // the Tracker.
      paramMap.setCampaignParamsFromUrl(uri.toString());

     // If no source parameter, set authority to source and medium to
     // "referral".
     } else if (uri.getAuthority() != null) {

       paramMap.set(Fields.CAMPAIGN_MEDIUM, "referral");
       paramMap.set(Fields.CAMPAIGN_SOURCE, uri.getAuthority());

     }

     return paramMap.build();
  }
}

Si vous disposez d'informations sur la campagne sous un format autre que les paramètres de campagne Google Analytics, vous pouvez les définir sur un Map et les envoyer manuellement:

// May return null if EasyTracker has not yet been initialized with a property ID.
EasyTracker easyTracker = EasyTracker.getInstance(this);
easyTracker.set(Fields.SCREEN_NAME, "Home Screen");

// In this example, campaign information is set using a Map, rather than
// a url string with Google Analytics campaign parameters.
// Note that Fields.CAMPAIGN_KEYWORD is not necessary for this campaign.
HashMap<String, String> campaignData = new HashMap<String, String>();
campaignData.put(Fields.CAMPAIGN_SOURCE, "email");
campaignData.put(Fields.CAMPAIGN_MEDIUM, "email marketing");
campaignData.put(Fields.CAMPAIGN_NAME, "summer_campaign");
campaignData.put(Fields.CAMPAIGN_CONTENT, "email_variation_1");

MapBuilder paramMap = MapBuilder.createAppView();

// Campaign data sent with this hit.
// Note that the campaign data is set on the Map, not the tracker.
easyTracker.send(paramMap
    .setAll(campaignData).build()
);

Attribution des campagnes Google Play

La mesure des campagnes Google Play vous permet d'identifier les campagnes et les sources de trafic qui incitent les utilisateurs à télécharger votre application à partir du Google Play Store. Nous recommandons à tous les développeurs d'implémenter la mesure des campagnes Google Play Store.

Implémenter l'attribution des campagnes Google Play

Lorsque votre application est téléchargée sur le Google Play Store, elle diffuse un INTENT_REFERRER lors de l'installation. Cet intent contient la valeur du paramètre referrer du lien utilisé pour accéder à la page Google Play Store de votre application, le cas échéant.

Pour attribuer le téléchargement d'une application à une campagne, vous devez ajouter un paramètre referrer à tous les liens qui redirigent vers le Google Play Store, et ajouter un BroadcastReceiver à votre application pour recevoir et définir les informations de campagne contenues dans l'intent sur votre outil de suivi Google Analytics.

Il est recommandé à la plupart des développeurs d'utiliser le BroadcastReceiver fourni avec le SDK. Pour implémenter la mesure des campagnes Google Play Store à l'aide du récepteur inclus:

1. Ajoutez le récepteur Google Analytics à votre fichier AndroidManifest.xml. Pour ajouter le récepteur Google Analytics au fichier manifeste, copiez et collez le balisage suivant:

<!-- Used for Google Play Store Campaign Measurement-->;
<service android:name="com.google.analytics.tracking.android.CampaignTrackingService" />
<receiver android:name="com.google.analytics.tracking.android.CampaignTrackingReceiver" android:exported="true">
  <intent-filter>
    <action android:name="com.android.vending.INSTALL_REFERRER" />
  </intent-filter>
</receiver>

2. Ajouter des paramètres de campagne Google Analytics aux URL Google Play

Ensuite, ajoutez un paramètre referrer à toutes les URL qui redirigent directement vers le Google Play Store, puis définissez la valeur de ce paramètre sur une chaîne de paramètres de campagne Google Analytics qui décrivent la source, comme dans cet exemple:

https://play.google.com/store/apps/details?id=com.example.app
&referrer=utm_source%3Dgoogle
%26utm_medium%3Dcpc
%26utm_term%3Dpodcast%252Bapps
%26utm_content%3DdisplayAd1
%26utm_campaign%3Dpodcast%252Bgeneralkeywords

Pour apprendre à créer des chaînes de paramètres de campagne, utilisez l'outil de création d'URL Google Play ou consultez la section de référence sur les paramètres de campagne.

Outil de création d'URL Google Play

Utilisez l'outil ci-dessous afin de générer des URL pour mesurer les performances des campagnes Google Play.