การทดสอบ A/B สําหรับสื่อกลาง

AdMob API สามารถสร้างการทดสอบ A/B สำหรับสื่อกลางเพื่อเพิ่มโฆษณาให้ได้สูงสุด ประสิทธิภาพการทำงานโดยการทดสอบ การกำหนดค่าต่างๆ การทดสอบ A/B จะช่วยคุณประเมิน เป็น 2 รูปแบบในการเปรียบเทียบผลลัพธ์ควบคู่กัน เลือกการกำหนดค่าที่ต้องการ

ตัวอย่างการทดสอบที่คุณสามารถตั้งค่าได้มีดังนี้

  • เพิ่มหรือนําแหล่งที่มาของโฆษณาออกเพื่อดูผลกระทบต่อกลุ่มสื่อกลาง
  • ใช้ลำดับ Waterfall อื่นโดยการเปลี่ยนค่า eCPM ของโฆษณาด้วยตนเอง แหล่งที่มา
  • เปิดหรือปิดใช้การเพิ่มประสิทธิภาพในแหล่งที่มาของโฆษณาสื่อกลางตามลำดับขั้น
  • เปลี่ยนจํานวนครั้งที่มีการเรียกแหล่งที่มาของโฆษณา

ตัวอย่าง

เริ่มต้นด้วยกลุ่มสื่อกลางที่มีอยู่แล้ว สร้างรูปแบบต่างๆ เพื่อดู ตัวแปร A หรือ B มีประสิทธิภาพดีกว่า การทดสอบแยกผู้ใช้แอป ระหว่างการตั้งค่ากลุ่มสื่อกลางที่มีอยู่กับตัวแปร โดยอิงตาม (1%, 10% หรือ 50%) ที่คุณระบุ

curl (บรรทัดคำสั่ง)

คำขอที่ใช้ curl

  1. โหลดไฟล์รหัสลับไคลเอ็นต์และสร้างการให้สิทธิ์ ข้อมูลเข้าสู่ระบบ

    ครั้งแรกที่คุณทำขั้นตอนนี้ ระบบจะขอให้คุณยอมรับ ข้อความแจ้งการให้สิทธิ์ในเบราว์เซอร์ของคุณ ก่อนยอมรับ โปรดตรวจสอบว่าคุณได้ ลงชื่อเข้าใช้ด้วยบัญชี Google ที่มีสิทธิ์เข้าถึง AdMob API บัญชี แอปจะได้รับอนุญาตให้เข้าถึงข้อมูลในนามของบัญชีใดก็ตาม ลงชื่อเข้าใช้อยู่ในขณะนี้

    สำหรับการตรวจสอบสิทธิ์และการให้สิทธิ์ เราขอแนะนำให้ใช้ 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. สร้างการทดสอบ A/B สำหรับสื่อกลาง

    แทนที่ pub-XXXXXXXXXXXXXXXX ด้วย ผู้เผยแพร่โฆษณาของคุณ บัตรประจำตัวและZZZZZZZZZZ พร้อมกับ รหัสกลุ่มสื่อกลาง ดูรหัสกลุ่มสื่อกลางได้ใน UI ของ AdMob หรือ โดยใช้เมธอด accounts.mediationGroups:list

    คุณต้องระบุ treatmentMediationLines และ treatmentTrafficPercentage, อย่างไรก็ตาม controlMediationLines ได้รับช่วงมาจากกลุ่มสื่อกลางระดับบนสุดและไม่จำเป็นต้อง ที่ระบุ

    คำขอต่อไปนี้สร้างการทดสอบ A/B สำหรับสื่อกลางโดยที่ ตัวแปรกลุ่มทดสอบหรือที่เรียกว่าตัวแปร B มีสื่อกลางรายการเดียว สำหรับเครือข่าย 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. ยืนยันว่าการทดสอบ A/B สำหรับสื่อกลางกำลังทำงานอยู่

    โทร accounts.mediationGroups:list เพื่อดูสถานะการทดสอบ A/B สำหรับสื่อกลางของกลุ่มสื่อกลางนั้น โปรดดู กลุ่มสื่อกลาง เพื่อดูข้อมูลเพิ่มเติม รายละเอียด

    mediationAbExperimentState มีการตั้งค่าเป็น RUNNING สำหรับการทดสอบ A/B ของสื่อกลางที่ใช้งานอยู่ และ 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. หยุดการทดสอบ A/B สำหรับสื่อกลางแล้วเลือกตัวแปร

    แทนที่ pub-XXXXXXXXXXXXXXXX ด้วย ผู้เผยแพร่โฆษณาของคุณ บัตรประจำตัวและZZZZZZZZZZ พร้อมกับ รหัสกลุ่มสื่อกลาง ดูรหัสกลุ่มสื่อกลางได้ใน UI ของ AdMob หรือ โดยใช้เมธอด accounts.mediationGroups:list

    หากต้องการทำการทดสอบให้เสร็จสมบูรณ์ โปรดระบุตัวแปรที่ชนะในคำขอ

    • VARIANT_CHOICE_A: ใช้บรรทัดสื่อกลางจากตัวแปร A และทําให้เสร็จสมบูรณ์ การทดสอบ ตัวแปร A มีบรรทัดการแสดงผลเดิมก่อนพารามิเตอร์ การสร้างการทดสอบ
    • VARIANT_CHOICE_B: ใช้บรรทัดสื่อกลางจากตัวแปร B และดำเนินการให้เสร็จสมบูรณ์ การทดสอบ ตัวแปร 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",
    }