اندازه گیری کمپین - Android SDK

این سند یک نمای کلی از نحوه اندازه گیری کمپین ها و منابع ترافیک با Google Analytics SDK برای Android نسخه 3 ارائه می دهد.

بررسی اجمالی

اندازه‌گیری کمپین‌ها در Google Analytics، انتساب کمپین‌ها و منابع ترافیک به فعالیت کاربر در برنامه شما را امکان‌پذیر می‌سازد. این گزینه‌ها برای انتساب منبع ترافیک و کمپین در Google Analytics SDK برای Android در دسترس هستند:

  • Google Play Campaign Attribution - ببینید کدام کمپین ها، وب سایت ها و سایر برنامه ها کاربران را برای دانلود برنامه شما به فروشگاه Google Play ارجاع می دهند.
  • کمپین عمومی و منبع ترافیک - ببینید کدام کمپین ها یا ارجاع دهندگان برنامه شما را پس از نصب راه اندازی می کنند.

بخش‌های زیر زمان و نحوه اجرای هر نوع اندازه‌گیری کمپین را در برنامه شما شرح می‌دهند.

پارامترهای کمپین

پارامترهای کمپین برای انتقال اطلاعات در مورد منابع ترافیک و کمپین هایی که کاربران را به برنامه شما می آورند استفاده می شود.

جدول زیر شامل پارامترهای کمپین موجود است که می تواند در 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 محتوای کمپین؛ برای تست A/B و تبلیغات هدفمند محتوا برای متمایز کردن تبلیغات یا پیوندهایی که به یک URL اشاره می کنند استفاده می شود. utm_content=logolink
utm_content=textlink
gclid پارامتر برچسب گذاری خودکار گوگل ادز ; برای اندازه گیری تبلیغات استفاده می شود. این مقدار به صورت پویا تولید می شود و هرگز نباید تغییر یابد.

کمپین عمومی و منبع ترافیک

پس از نصب یک برنامه، ممکن است با ارجاع از کمپین های تبلیغاتی، وب سایت ها یا برنامه های دیگر راه اندازی شود. در این سناریو، ارجاع منابع ترافیک یا کمپین های بازاریابی را می توان با تنظیم مستقیم فیلدهای کمپین در یک ردیاب به فعالیت کاربر در جلسات بعدی نسبت داد.

به عنوان مثال، پیاده سازی زیر قصد راه اندازی برنامه را برای پارامترهای کمپین 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();
  }
}

از طرف دیگر، اگر اطلاعات کمپین را به شکلی غیر از پارامترهای کمپین Google Analytics دارید، می‌توانید آن را روی 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 Campaign Measurement به شما این امکان را می دهد که ببینید کدام کمپین ها و منابع ترافیک کاربران را برای دانلود برنامه شما از فروشگاه Google Play می فرستند. توصیه می شود که همه توسعه دهندگان اندازه گیری کمپین فروشگاه Google Play را اجرا کنند.

پیاده سازی انتساب کمپین Google Play

هنگامی که برنامه شما از فروشگاه Google Play دانلود می شود، برنامه Play Store یک INTENT_REFERRER را در حین نصب برای برنامه شما پخش می کند. این هدف حاوی مقدار پارامتر referrer پیوندی است که برای دسترسی به صفحه فروشگاه Google Play برنامه شما استفاده شده است، اگر یکی وجود داشت.

برای نسبت دادن دانلود برنامه به یک کمپین، باید یک پارامتر referrer به هر پیوندی که به فروشگاه Google Play اشاره دارد اضافه کنید، و یک BroadcastReceiver به برنامه خود اضافه کنید تا اطلاعات کمپین موجود در intent را در ردیاب Google Analytics خود دریافت و تنظیم کنید.

توصیه می شود که اکثر توسعه دهندگان از BroadcastReceiver ارائه شده با SDK استفاده کنند. برای اجرای اندازه‌گیری کمپین فروشگاه Google Play با استفاده از گیرنده موجود:

1. گیرنده Google Analytics را به فایل AndroidManifest.xml خود اضافه کنید. برای افزودن گیرنده Google Analytics به مانیفست، نشانه گذاری زیر را کپی و جایگذاری کنید:

<!-- 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 را به URL های Google Play اضافه کنید

سپس، یک پارامتر referrer را به هر URL که مستقیماً به فروشگاه Google Play پیوند می دهد اضافه کنید و مقدار آن پارامتر را روی یک رشته از پارامترهای کمپین Google Analytics که منبع را توصیف می کند، تنظیم کنید، مانند این مثال:

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 Builder استفاده کنید یا به بخش مرجع پارامترهای کمپین مراجعه کنید.

Google Play URL Builder

از ابزار زیر برای ایجاد URL برای اندازه‌گیری کمپین Google Play استفاده کنید.