Ce document explique comment mesurer les campagnes et les sources de trafic avec le SDK Google Analytics v4 pour Android.
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 la version 4 du SDK Google Analytics pour Android:
- Attribution des campagnes Google Play : identifiez les campagnes, les sites Web et les autres applications qui redirigent les utilisateurs vers le Google Play Store pour télécharger votre application.
- Attribution générale des campagnes et des sources de trafic : identifiez les campagnes ou les URL de provenance qui lancent votre application une fois qu'elle est installée.
Les sections suivantes décrivent quand et comment implémenter chaque type de mesure de campagne dans votre application.
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
Le Google Play Store propose une API Install Referrer permettant aux développeurs de récupérer en toute sécurité le contenu du site référent depuis Google Play. Cette API renvoie la valeur du paramètre d'URL de provenance 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 d'URL de provenance à tous les liens qui renvoient vers le Google Play Store, et ajouter l'API Install Referrer de Play à votre application pour recevoir et définir les informations de campagne contenues dans l'intent sur votre outil de suivi Google Analytics.
1. Supprimez le récepteur Google Analytics de votre fichier AndroidManifest.xml.
Si vous avez également implémenté le récepteur Google Tag Manager, supprimez-le également de votre fichier manifeste.
2. Ajoutez une dépendance à la bibliothèque de l'API Install Referrer.
Pour ajouter la dépendance, incluez le code suivant dans le fichier build.gradle:
dependencies { ... implementation 'com.android.installreferrer:installreferrer:1.1' }
3. Appelez l'API Install Referrer dans l'activité de lancement de votre application.
Utilisez l'API Install Referrer pour récupérer l'URL de provenance du package d'application installé, puis transmettez la valeur de l'URL à un récepteur Google Analytics ou Google Tag Manager. Suivez une implémentation semblable au code suivant pour utiliser l'API Install Referrer dans l'activité de lancement de votre application.
Si vous avez plusieurs points d'entrée dans l'application, tels que des liens profonds dans des parties spécifiques, vous pouvez implémenter les méthodes prescrites dans un ActivityLifecycleListener
qui est déclenché par ActivityLifecycleCallbacks
.
package com.example.myapplication; import static com.android.installreferrer.api.InstallReferrerClient.InstallReferrerResponse; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.os.Handler; import android.os.RemoteException; import com.android.installreferrer.api.InstallReferrerClient; import com.android.installreferrer.api.InstallReferrerStateListener; import com.android.installreferrer.api.ReferrerDetails; import com.google.android.gms.analytics.CampaignTrackingReceiver; import com.google.tagmanager.InstallReferrerReceiver; import java.util.concurrent.Executor; import java.util.concurrent.Executors; public class MainActivity extends AppCompatActivity { private final Executor backgroundExecutor = Executors.newSingleThreadExecutor(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); checkInstallReferrer(); } // TODO: Change this to use whatever preferences are appropriate. The install referrer should // only be sent to the receiver once. private final String prefKey = "checkedInstallReferrer"; void checkInstallReferrer() { if (getPreferences(MODE_PRIVATE).getBoolean(prefKey, false)) { return; } InstallReferrerClient referrerClient = InstallReferrerClient.newBuilder(this).build(); backgroundExecutor.execute(() -> getInstallReferrerFromClient(referrerClient)); } void getInstallReferrerFromClient(InstallReferrerClient referrerClient) { referrerClient.startConnection(new InstallReferrerStateListener() { @Override public void onInstallReferrerSetupFinished(int responseCode) { switch (responseCode) { case InstallReferrerResponse.OK: ReferrerDetails response = null; try { response = referrerClient.getInstallReferrer(); } catch (RemoteException e) { e.printStackTrace(); return; } final String referrerUrl = response.getInstallReferrer(); // TODO: If you're using GTM, call trackInstallReferrerforGTM instead. trackInstallReferrer(referrerUrl); // Only check this once. getPreferences(MODE_PRIVATE).edit().putBoolean(prefKey, true).commit(); // End the connection referrerClient.endConnection(); break; case InstallReferrerResponse.FEATURE_NOT_SUPPORTED: // API not available on the current Play Store app. break; case InstallReferrerResponse.SERVICE_UNAVAILABLE: // Connection couldn't be established. break; } } @Override public void onInstallReferrerServiceDisconnected() { } }); } // Tracker for Classic GA (call this if you are using Classic GA only) private void trackInstallReferrer(final String referrerUrl) { new Handler(getMainLooper()).post(new Runnable() { @Override public void run() { CampaignTrackingReceiver receiver = new CampaignTrackingReceiver(); Intent intent = new Intent("com.android.vending.INSTALL_REFERRER"); intent.putExtra("referrer", referrerUrl); receiver.onReceive(getApplicationContext(), intent); } }); } // Tracker for GTM + Classic GA (call this if you are using GTM + Classic GA only) private void trackInstallReferrerforGTM(final String referrerUrl) { new Handler(getMainLooper()).post(new Runnable() { @Override public void run() { InstallReferrerReceiver receiver = new InstallReferrerReceiver(); Intent intent = new Intent("com.android.vending.INSTALL_REFERRER"); intent.putExtra("referrer", referrerUrl); receiver.onReceive(getApplicationContext(), intent); } }); } }
4. 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.application &referrer=utm_source%3Dgoogle %26utm_medium%3Dcpc %26utm_term%3Drunning%252Bshoes %26utm_content%3Dlogolink %26utm_campaign%3Dspring_sale
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.
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 dans les sessions suivantes. Pour ce faire, définissez les paramètres de la campagne directement sur un outil de suivi à l'aide de la méthode setCampaignParamsFromUrl
.
// Get tracker. Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker( TrackerName.APP_TRACKER); // Set screen name. t.setScreenName(screenName); // In this example, campaign information is set using // a url string with Google Analytics campaign parameters. // Note: This is for illustrative purposes. In most cases campaign // information would come from an incoming Intent. String campaignData = "http://examplepetstore.com/index.html?" + "utm_source=email&utm_medium=email_marketing&utm_campaign=summer" + "&utm_content=email_variation_1"; // Campaign data sent with this hit. t.send(new HitBuilders.ScreenViewBuilder() .setCampaignParamsFromUrl(campaignData) .build() );
Pour en savoir plus sur la méthode getTracker
, consultez la section
Configuration avancée.
Paramètres de la campagne
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 pour Google Play ou pour la mesure générale des campagnes:
Paramètres | Description | Exemple(s) |
---|---|---|
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
|
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 |
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. |
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.