تجربة أ/ب للتوسّط

يمكن لواجهة برمجة تطبيقات AdMob إنشاء تجارب أ/ب للتوسّط لزيادة إعلاناتك إلى أقصى حد. الأداء عن طريق اختبار تهيئات مختلفة. يتيح لك اختبار أ/ب تقييم صيغتان من مجموعة توسّط لمقارنة النتائج جنبًا إلى جنب تحديد أحد الإعدادات المفضّلة.

في ما يلي أمثلة على التجارب التي يمكنك إعدادها:

  • إضافة مصادر الإعلانات أو إزالتها لمعرفة تأثيرها في مجموعة التوسّط
  • استخدام ترتيب مختلف للعرض الإعلاني بدون انقطاع من خلال تغيير قيمة التكلفة الفعلية اليدوية لكل ألف ظهور للإعلان المصادر
  • تفعيل ميزة التحسين على مصادر الإعلانات للعرض بدون انقطاع أو إيقافها
  • تغيير عدد مرات استدعاء مصدر الإعلان

أمثلة

ابدأ بمجموعة توسّط حالية وأنشِئ صيغة منها للاطّلاع على الصيغة "أ" أو "ب" التي تحقّق أفضل أداء يؤدي الاختبار إلى تقسيم مستخدمي تطبيقك بين إعداد مجموعة التوسط الحالية والصيغة، استنادًا إلى النسبة المئوية (1٪ أو 10٪ أو 50٪) التي تقدمها.

curl (سطر الأوامر)

الطلبات باستخدام ضفيرة

  1. تحميل ملف أسرار العميل وإنشاء تفويض بيانات الاعتماد

    عند تنفيذ هذه الخطوة لأول مرة، سيُطلب منك قبول طلب التفويض في متصفحك. قبل القبول، تأكد من أنك سجّلت الدخول باستخدام حساب Google لديه إمكانية الوصول إلى واجهة برمجة تطبيقات AdMob. التصريح للتطبيق بالوصول إلى البيانات نيابةً عن الحساب الذي تم تم تسجيل الدخول حاليًا.

    للمصادقة والترخيص، نوصي باستخدام oauth2l، وهي أداة بسيطة سطر أوامر تعمل مع Google OAuth 2.0. ثبِّت oauth2l وشغّل الأمر أدناه، مع استبدال path_to_credentials_json بمسار إلى ملف credentials.json الذي تنزّله عند تسجيل السحابة الإلكترونية التطبيق. عند تشغيل الأمر لأول مرة، يوجهك الأمر خلال OAuth 2.0 مسار التفويض. وتتم بعد ذلك إعادة تحميل الرمز المميّز تلقائيًا.

    oauth2l header --json path_to_credentials_json --scope admob.monetization,admob.readonly
    
  2. إنشاء تجربة أ/ب للتوسّط:

    استبدل pub-XXXXXXXXXXXXXXXX بـ الناشر المعرّف وZZZZZZZZZZ مع رقم تعريف مجموعة التوسط. يمكن العثور على رقم تعريف مجموعة التوسط في واجهة مستخدم AdMob أو باستخدام accounts.mediationGroups:list .

    يجب تحديد treatmentMediationLines أو treatmentTrafficPercentage, في المقابل، controlMediationLines مكتسَبة من مجموعة التوسّط الرئيسية ولا تحتاج إلى المحددة.

    ينشئ الطلب التالي تجربة أ/ب للتوسّط حيث الصيغة التجريبية، المعروفة أيضًا باسم الصيغة "ب"، تتضمّن عملية توسّط واحدة لشبكة AdMob باستخدام LIVE.

    curl --http1.0 \
    -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments \
    -H "Content-Type:application/json" \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" \
    --data @- << EOF
    {
      "displayName":"Mediation A/B Experiment Test Name",
      "treatmentTrafficPercentage": "50",
      "treatmentMediationLines": [{
        "mediationGroupLine": {
          "displayName": "Test mediation group line",
          "adSourceId": "5450213213286189855",
          "cpm_mode": "LIVE"
        }
      }]
    }
    EOF

    اطّلِع على نموذج الردّ أدناه الذي يمثّل السمة SSSSSSSSSSSSSSSSSSSSSS. الرقم التعريفي لتجربة A/B للتوسّط الذي تم إنشاؤه وYYYYYYYYYY يمثل آخر 10 أرقام في وحدتك الإعلانية رقم التعريف، مع الالتزام بالتنسيق التالي: ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY

    {
      "name": "accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments/SSSSSSSSSSSSSSSSSSSSSS",
      "displayName": "Mediation A/B Experiment Test Name",
      "experimentId": "SSSSSSSSSSSSSSSSSSSSSS",
      "treatmentTrafficPercentage": "50",
      "treatmentMediationLines": [
        {
          "mediationGroupLine": {
            "id": "11111111111111111",
            "displayName": "Test mediation group line",
            "adSourceId": "5450213213286189855",
            "cpmMode": "LIVE",
            "cpmMicros": "10000",
            "adUnitMappings": {
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
            },
            "state": "ENABLED"
          }
        }
      ],
      "controlMediationLines": [
        {
          "mediationGroupLine": {
            "id": "22222222222222222",
            "displayName": "AdMob Network (control)",
            "adSourceId": "5450213213286189855",
            "cpmMode": "LIVE",
            "cpmMicros": "10000",
            "adUnitMappings": {
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
            },
            "state": "ENABLED"
          }
        }
      ],
      "state": "RUNNING"
    }
  3. التحقّق من أنّ تجربة أ/ب للتوسّط قيد التشغيل.

    اتصل accounts.mediationGroups:list لمعرفة حالة تجربة أ/ب للتوسّط لمجموعة التوسط هذه. عرض مجموعات التوسط لمزيد من المعلومات التفاصيل.

    تشير رسالة الأشكال البيانية mediationAbExperimentState يتم ضبطها على RUNNING لتجارب أ/ب للتوسّط النشطة وNOT_RUNNING. في حال عدم توفّر تجربة قيد التنفيذ في مجموعة التوسّط.

    نموذج طلب:

     curl --http1.0 \
    -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.readonly)"
    
  4. أوقِف تجربة أ/ب للتوسّط واختَر صيغة.

    استبدل pub-XXXXXXXXXXXXXXXX بـ الناشر المعرّف وZZZZZZZZZZ مع رقم تعريف مجموعة التوسط. يمكن العثور على رقم تعريف مجموعة التوسط في واجهة مستخدم AdMob أو باستخدام accounts.mediationGroups:list .

    لإكمال التجربة، حدِّد الصيغة الفائزة في الطلب:

    • VARIANT_CHOICE_A: استخدام خطوط التوسّط من الصيغة "أ" وإكمال للتجربة. يحتوي المتغير A على سطور العرض الأصلية قبل إنشاء التجارب.
    • VARIANT_CHOICE_B: استخدام خطوط التوسّط من الصيغة "ب" وإكمالها للتجربة. تحتوي الصيغة "ب" على أسطر العرض المضافة حديثًا.

    نموذج طلب:

     curl --http1.0 \
    -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments:stop \
    -H "Content-Type:application/json" \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" \
    --data @- << EOF
    {
    "variantChoice": "VARIANT_CHOICE_A"
    }
    

    نموذج الرد:

    {
    "experimentId": "SSSSSSSSSSSSSSSSSSSSSS",
    "state": "EXPIRED",
    }