قياس أداء الحملة - الإصدار 2 من حزمة تطوير البرامج (SDK) لنظام التشغيل Android (قديمة)

يقدّم هذا المستند نظرة عامة حول كيفية قياس الحملات ومصادر الزيارات باستخدام حزمة تطوير البرامج (SDK) لأداة "إحصاءات Google" لنظام التشغيل Android الإصدار 2.

نظرة عامة

يمكن أن يساعدك قياس الحملات في "إحصاءات Google" على تحسين قيمة قنواتك التسويقية من خلال تفعيل إحالة الحملات ومصادر الزيارات إلى نشاط المستخدمين داخل تطبيقك.

تتوفّر عدّة أنواع من قياس الحملات في حزمة تطوير البرامج (SDK) لأداة "إحصاءات Google" لنظام التشغيل Android:

  • قياس حملات Google Play - تعرّف على الحملات والمواقع الإلكترونية والتطبيقات التي أحالت مستخدمًا إلى صفحة "متجر Google Play" الخاصة بتطبيقك لتنزيل تطبيقك.
  • قياس الحملات العامة - تعرّف على الحملات أو مصادر الزيارات التي أطلقت تطبيقك الذي تم تثبيته.
  • قياس الإحالات - اطّلع على مصدر الزيارات المُحيل، مثل المواقع الإلكترونية أو التطبيقات الأخرى، الذي شغّل تطبيقك بعد تثبيته.

ستوضّح الأقسام التالية أوقات وكيفية تنفيذ كل نوع من أنواع قياس الحملات في تطبيقك.

قياس أداء حملات Google Play

يتيح لك قياس أداء الحملة على Google Play معرفة الحملات ومصادر الزيارات التي توجّه المستخدمين إلى تنزيل تطبيقك من "متجر Google Play". نقترح على جميع مطوّري البرامج تنفيذ قياس حملة متجر Google Play.

آلية عمل قياس أداء الحملات على Google Play

يعتمد قياس حملات "متجر Google Play" على استخدام معلّمات الحملة لتمرير معلومات الحملات ومصادر الزيارات إلى تطبيقك في وقت تنزيله من "متجر Google Play".

في ما يلي وصف شامل لكيفية عمل قياس حملة Google Play:

  1. ينقر أحد المستخدمين على رابط معيّن ينقله إلى إعلان أو موقع إلكتروني أو تطبيق، ما يؤدي إلى توجيهه إلى صفحة "متجر Google Play" على تطبيقك. يتم وضع علامة على الرابط باستخدام معلّمات الحملة.
  2. بعد أن ينزِّل المستخدم تطبيقك ويثبّته، سينشر"متجر Google Play"هدف INSTALL_REFERRER على الجهاز الذي يتضمّن معلَمات الحملة نفسها.
  3. بعد ذلك، سيستجيب تطبيقك إلى ذلك الغرض باستخدام عنصر BroadcastReceiver المقدَّم أدناه، وسيقرأ معلَمات الحملات ويستخدمها لتعديل معلومات الحملات على"إحصاءات Google".

يمكنك تنفيذ ميزة قياس أداء حملات Google Play

لتنفيذ "قياس الحملات على متجر Google Play":

1. إضافة Broadcast الاستلام الجديد إلى ملف AndroidManifest.xml

يسمح BroadcastReceiver التالي لتطبيقك بالرد على إعلان البث INSTALL_REFERRER المقصود من "متجر Google Play" عند تثبيت تطبيقك. أضِف الملف إلى AndroidManifest.xml كما يلي:

<!-- Used for install referral 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"

يتم استخدام معلّمات الحملة لتمرير معلومات عن الحملة أو مصدر الزيارات الذي أحال مستخدمًا إلى صفحة تطبيقك على "متجر Google Play" في عملية تنفيذ تطبيقك على "إحصاءات Google".

للتعرّف على كيفية إنشاء سلسلة معلّمة للحملة، استخدِم أداة إنشاء عناوين URL في Google Play، أو ارجِع إلى قسم المراجع معلّمات الحملة.

بعد إنشاء سلسلة معلّمة حملتك، يمكنك إضافتها إلى عناوين URL على "متجر Google Play" كقيمة المَعلمة referrer، كما هو موضّح في هذا المثال:

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

وسيرسل "متجر Google Play" قيمة المعلَمة referrer فقط إلى عملية تنفيذ "إحصاءات Google" لتطبيقك، لذا من المهم التأكّد من أنها متوفّرة في روابط "متجر Google Play".

قياس الحملات العامة

يمكن استخدام القياس العام للحملة لربط حملة أو مصدر زيارات بمستخدم بعد تثبيته.

على سبيل المثال، إذا كنت تُطلق حملة مدفوعة للوصول إلى المستخدمين الحاليين الذين سبق لهم تثبيت تطبيقك، يمكنك استخدام قياس عام للحملة لقياس عمليات إطلاق التطبيقات التي كانت نتيجة لهذه الحملة.

تنفيذ قياس عام للحملة

لتحديد قيم الحملة لحملة عامة، يجب استدعاء setCampaign() وتمرير سلسلة مَعلمة الحملة كوسيطة.

قد يستدعي التنفيذ النموذجي setCampaign() عند تشغيل التطبيق، ويتحقّق من النية في تشغيله لمعرفة ما إذا كانت هناك معلّمات حملة صالحة:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

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

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before calling activityStart().
    EasyTracker.getInstance().setContext(this);

    if (intent.getData() != null) {
      EasyTracker.getTracker().setCampaign(uri.getPath());
    }
    ... // The rest of your onCreate() code.
  }

  @Override
  public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

قياس الإحالات

يشبه قياس الإحالة أنواعًا أخرى من قياس الحملات، حيث يسمح لك بقياس مصدر إحالة يشغّل تطبيقك على جهاز مستخدم. ومع ذلك، يستخدم قياس الإحالات سلسلة بسيطة مثل "google;com.com" أو "myOtherApp" بدلاً من سلسلة من معلمات الحملة.

عند ضبط مصدر إحالة، مثل "google;com.quot;، يتم ضبط سمة المصدر على &"google.com"، بينما يتم ضبط البُعد المتوسط ضمنيًا على "referrer"

كما هو الحال في قياس الحملات، سيؤدي مصدر الإحالة الناجحة تلقائيًا إلى إرسال المكالمة التالية لبدء جلسة جديدة.

في مقتطف الرمز التالي، نفترض أنك وضعت علامة على أي روابط ستعمل على فتح تطبيقك باستخدام معلَمات الحملة في"إحصاءات Google"، أو بمَعلمة referrer بسيطة تصف المصدر المُحيل. في حال توفّر المعلّمة referrer في حال عدم توفّر معلّمات حملات أخرى، يتم تعديل معلومات حملة المستخدِم باستخدام مصدر إحالة جديد:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

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

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before activityStart() is called.
    EasyTracker.getInstance().setContext(this);

    if (uri != null) {
      if(uri.getQueryParmeter("utm_source") != null) {    // Use campaign parameters if avaialble.
        EasyTracker.getTracker().setCampaign(uri.getPath());
      } else if (uri.getQueryParameter("referrer") != null) {    // Otherwise, try to find a referrer parameter.
        EasyTracker.getTracker().setReferrer(uri.getQueryParameter("referrer"));
      }
    }
  }


  @Override
    public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

المشاكل المعروفة

  • تستخدم javadoc لـ CampaignTrackingReceiver مسار فئة غير صحيح في مثال الاستخدام. اطّلِع على تنفيذ قياس حملات Google Play للاستخدام الصحيح.
  • يمكن تحديد فئة BroadcastReceiver واحدة فقط لكل تطبيق. إذا كنت بحاجة إلى دمج BroadcastReceivers أو أكثر من حِزم تطوير برامج (SDK) مختلفة، عليك إنشاء فئتك الخاصة على BroadcastReceiver التي ستتلقّى كل عمليات البث وتطلب BroadcastReceivers المناسب لكل نوع من أنواع البث.
  • لا تتيح ميزة قياس أداء حملات Google Play في الوقت الحالي عمليات التثبيت من الويب إلى الجهاز التي يتم إجراؤها من "متجر Play" على الويب.

معلّمات الحملة

يتم استخدام معلّمات الحملات لتمرير معلومات عن مصادر الزيارات والحملات التي تجذب المستخدمين إلى تطبيقك.

  • في قياس الحملات العامة، يتم تمرير سلسلة معلّمة الحملة غير المشفّرة كوسيطة إلى setCampaign() .
  • في Google Play Campaign Measurement، يتم إضافة معلّمة referrer ذات سلسلة معلّمة حملة مشفّرة وقيمتها إلى أي عناوين URL تشير إلى صفحة"متجر Play"لتطبيقك.

في ما يلي مثال على سلسلة حملة صالحة وغير مرمّزة يمكن استخدامها لقياس الحملات العامة:

"utm_campaign=my_campaign&utm_source=google&utm_medium=cpc&utm_term=my_keyword&utm_content=ad_variation1"

يعرض الجدول أدناه القائمة الكاملة بمعلمات الحملات المتاحة التي يمكن استخدامها في 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 نفسه utm_content=logolink
utm_content=textlink
gclid معلّمة وضع العلامات التلقائي في "إعلانات Google"، وهي تُستخدم لقياس "إعلانات Google". يتم إنشاء هذه القيمة ديناميكيًا ويجب عدم تعديلها مطلقًا.

أداة إنشاء عناوين URL في Google Play

استخدِم أداة إنشاء عناوين URL في Google Play لإنشاء عناوين URL لقياس أداء حملة Google Play.