Kampagnenanalyse – Android SDK

In diesem Dokument erhalten Sie einen Überblick über die Analyse von Kampagnen und Besucherquellen mit dem Google Analytics SDK for Android Version 3.

Überblick

Wenn Sie Kampagnen in Google Analytics messen, können Sie Kampagnen und Besucherquellen den Nutzeraktivitäten in Ihrer App zuordnen. Diese Optionen sind für die Attribution von Kampagnen und Besucherquellen im Google Analytics SDK for Android verfügbar:

In den folgenden Abschnitten erfahren Sie, wann und wie Sie die einzelnen Arten von Kampagnenanalysen in Ihrer App implementieren.

Kampagnenparameter

Kampagnenparameter werden verwendet, um Informationen zu den Besucherquellen und Kampagnen zu übergeben, über die Nutzer zu Ihrer App gelangen.

Die folgende Tabelle enthält die verfügbaren Kampagnenparameter, die in Google Play oder zur allgemeinen Kampagnenmessung verwendet werden können:

Parameter Beschreibung Beispiel(e)
utm_campaign Kampagnenname; wird für die Keyword-Analyse verwendet, um eine bestimmte Werbeaktion oder strategische Kampagne zu identifizieren utm_campaign=spring_sale
utm_source Kampagnenquelle; zur Identifizierung einer Suchmaschine, eines Newsletters oder einer anderen Quelle utm_source=google
utm_medium Kampagnenmedium; zur Identifizierung eines Mediums wie E-Mail oder Cost-per-Click (CPC) utm_medium=cpc
utm_term Kampagnenbegriff; wird bei bezahlter Suche verwendet, um die Keywords für Anzeigen bereitzustellen utm_term=running+shoes
utm_content Kampagneninhalte; wird für A/B-Tests und inhaltsbezogene Anzeigen verwendet, um Anzeigen oder Links zu unterscheiden, die auf dieselbe URL verweisen utm_content=logolink
utm_content=textlink
gclid Google Ads-Parameter für das automatische Tagging; wird zur Analyse von Anzeigen verwendet Dieser Wert wird dynamisch generiert und sollte nie geändert werden.

Allgemeine Kampagnen- und Besucherquellenzuordnung

Nachdem eine App installiert wurde, kann sie über Verweise von Werbekampagnen, Websites oder anderen Apps gestartet werden. In diesem Szenario können verweisende Besucherquellen oder Marketingkampagnen Nutzeraktivitäten in nachfolgenden Sitzungen zugeordnet werden, indem die Kampagnenfelder direkt in einem Tracker festgelegt werden.

Mit der folgenden Implementierung wird beispielsweise der Intent, mit dem die App gestartet wurde, auf Google Analytics-Kampagnenparameter geprüft:

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

Wenn Sie Kampagneninformationen in einem anderen Format als den Google Analytics-Kampagnenparametern haben, können Sie sie auch auf ein Map festlegen und manuell senden:

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

Google Play-Kampagnenattribution

Mit der Kampagnenanalyse bei Google Play können Sie feststellen, über welche Kampagnen und Besucherquellen Nutzer Ihre App im Google Play Store herunterladen. Wir empfehlen allen Entwicklern, die Kampagnenanalyse im Google Play Store zu implementieren.

Attribution für Google Play-Kampagnen implementieren

Wenn deine App aus dem Google Play Store heruntergeladen wird, sendet die Play Store App während der Installation ein INTENT_REFERRER an deine App. Dieser Intent enthält den Wert des Parameters referrer des Links, über den der Link zur Google Play Store-Seite Ihrer App gelangt ist (falls vorhanden).

Um einen App-Download einer Kampagne zuzuordnen, müssen Sie allen Links, die auf den Google Play Store verweisen, einen referrer-Parameter hinzufügen. Außerdem müssen Sie Ihrer App einen BroadcastReceiver-Parameter hinzufügen, damit die im Intent enthaltenen Kampagneninformationen im Google Analytics-Tracker abgerufen und festgelegt werden können.

Es wird empfohlen, dass die meisten Entwickler das mit dem SDK bereitgestellte BroadcastReceiver verwenden. So implementieren Sie die Google Play Store-Kampagnenmessung mit dem enthaltenen Empfänger:

1. Fügen Sie der Datei AndroidManifest.xml den Google Analytics-Empfänger hinzu. Kopieren Sie das folgende Markup und fügen Sie es dem Manifest hinzu, um den Google Analytics-Empfänger hinzuzufügen:

<!-- 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. Google Analytics-Kampagnenparameter zu Google Play-URLs hinzufügen

Als Nächstes fügen Sie allen URLs, die direkt mit dem Google Play Store verknüpft werden, einen referrer-Parameter hinzu und legen Sie den Wert dieses Parameters auf einen String von Google Analytics-Kampagnenparametern fest, die die Quelle beschreiben. Beispiel:

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

Informationen zum Erstellen von Strings für Kampagnenparameter finden Sie im Tool zur URL-Erstellung für Google Play oder in der Referenz zu Kampagnenparametern.

Tool zur URL-Erstellung für Google Play

Mit dem folgenden Tool lassen sich URLs für die Google Play-Kampagnenanalyse generieren.