캠페인 측정 - Android SDK

이 문서에서는 Android v3용 Google 애널리틱스 SDK를 사용하여 캠페인 및 트래픽 소스를 측정하는 방법을 간략하게 설명합니다.

개요

Google 애널리틱스에서 캠페인을 측정하면 애플리케이션 내 사용자 활동에 대한 캠페인 및 트래픽 소스의 기여 분석을 사용할 수 있습니다. 이 옵션은 Android용 Google 애널리틱스 SDK에서 캠페인 및 트래픽 소스 기여 분석에 사용할 수 있습니다.

다음 섹션에서는 앱에서 각 유형의 캠페인 측정을 구현하는 경우와 방법을 설명합니다.

캠페인 매개변수

캠페인 매개변수는 사용자를 앱으로 유도하는 트래픽 소스 및 캠페인에 대한 정보를 전달하는 데 사용됩니다.

아래 표에는 Google Play 또는 일반 캠페인 측정에 사용할 수 있는 캠페인 매개변수가 나와 있습니다.

매개변수 설명 예시
utm_campaign 캠페인 이름. 특정 제품 프로모션 또는 전략적 캠페인을 식별하기 위한 키워드 분석에 사용됩니다. utm_campaign=spring_sale
utm_source 검색엔진, 뉴스레터 또는 기타 소스를 식별하는 데 사용되는 캠페인 소스 utm_source=google
utm_medium 캠페인 매체. 이메일 또는 클릭당비용 (CPC)과 같은 매체를 식별하는 데 사용됨 utm_medium=cpc
utm_term 광고 키워드를 제공하기 위해 유료 검색과 함께 사용되는 캠페인 검색어 utm_term=running+shoes
utm_content 캠페인 콘텐츠: 동일한 URL을 가리키는 광고 또는 링크를 구분하기 위해 A/B 테스트 및 콘텐츠 타겟팅 광고에 사용됨 utm_content=logolink
utm_content=textlink
gclid Google Ads 자동 태그 추가 매개변수: 광고를 측정하는 데 사용됩니다. 이 값은 동적으로 생성되며 수정해서는 안 됩니다.

일반 캠페인 및 트래픽 소스 기여 분석

설치된 앱은 광고 캠페인, 웹사이트 또는 기타 앱의 추천을 통해 실행될 수 있습니다. 이 시나리오에서는 추적기에 직접 캠페인 필드를 설정하여 후속 세션에서의 사용자 활동이 추천 트래픽 소스 또는 마케팅 캠페인에 기여했다고 간주할 수 있습니다.

예를 들어 다음 구현은 Google 애널리틱스 캠페인 매개변수를 위해 앱을 실행한 인텐트를 확인합니다.

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

또는 Google 애널리틱스 캠페인 매개변수가 아닌 다른 형식의 캠페인 정보가 있는 경우 Map에서 설정하고 수동으로 전송할 수 있습니다.

// 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 캠페인 기여 분석

Google Play 캠페인 측정을 사용하면 Google Play 스토어에서 앱을 다운로드하도록 사용자를 보내는 캠페인과 트래픽 소스를 확인할 수 있습니다. 모든 개발자는 Google Play 스토어 캠페인 측정을 구현하는 것이 좋습니다.

Google Play 캠페인 기여 분석 구현

Google Play 스토어에서 앱을 다운로드하면 Play 스토어 앱은 설치 중에 앱에 INTENT_REFERRER를 브로드캐스트합니다. 앱의 Google Play 스토어 페이지에 도달하는 데 사용되는 링크의 referrer 매개변수 값이 이 인텐트에 포함됩니다(있는 경우).

캠페인 다운로드의 기여도를 부여하려면 Google Play 스토어로 연결되는 모든 링크에 referrer 매개변수를 추가하고 앱에 BroadcastReceiver를 추가하여 Google 애널리틱스 추적기에서 인텐트에 포함된 캠페인 정보를 수신하고 설정해야 합니다.

대부분의 개발자는 SDK와 함께 제공되는 BroadcastReceiver를 사용하는 것이 좋습니다. 포함된 수신기를 사용하여 Google Play 스토어 캠페인 측정을 구현하려면 다음 단계를 따르세요.

1. AndroidManifest.xml 파일에 Google 애널리틱스 수신기를 추가합니다. 매니페스트에 Google 애널리틱스 수신기를 추가하려면 다음 마크업을 복사하여 붙여넣으세요.

<!-- 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 Play URL에 Google 애널리틱스 캠페인 매개변수 추가

그런 다음 Google Play 스토어로 직접 연결되는 모든 URL에 referrer 매개변수를 추가하고 이 매개변수의 값을 소스를 설명하는 Google 애널리틱스 캠페인 매개변수의 문자열로 설정합니다(다음 예 참고).

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

캠페인 매개변수 문자열을 빌드하는 방법을 알아보려면 Google Play URL 빌더를 사용하거나 캠페인 매개변수 참조 섹션을 확인하세요.

Google Play URL 작성 도구

아래 도구를 사용하여 Google Play 캠페인 측정을 위한 URL을 생성하세요.