中介服務 A/B 實驗

AdMob API 可建立中介服務 A/B 實驗,盡量提升廣告成效 測試不同設定的效能A/B 測試可讓你評估 中介服務群組的兩種變化版本,將結果並列比較 請選取偏好的設定

以下列舉幾個您可以設定的實驗:

  • 新增或移除廣告來源,看看對中介服務群組的影響
  • 變更廣告的手動有效千次曝光出價,以變更刊登序列順序 來源
  • 啟用或停用刊登序列廣告來源最佳化功能
  • 變更系統呼叫廣告來源的次數

範例

先使用現有的中介服務群組,並建立其變化版本,以便查看 也就是 A 或 B 版本的成效較佳測試會拆分應用程式使用者 系統會根據您現有的中介服務群組設定和變化版本 百分比 (1%、10% 或 50%)。

curl (指令列)

使用 curl 的要求

  1. 載入用戶端密鑰檔案並產生授權 憑證

    第一次執行這個步驟時,系統會要求您接受 在瀏覽器中輸入授權提示接受前,請務必確認 使用可存取 AdMob API 的 Google 帳戶登入。您的 應用程式將有權代表 目前登入的帳戶

    如要進行驗證和授權,建議您使用 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 替換成您的發布商 IDZZZZZZZZZZ: 中介服務群組 ID您可以在 AdMob UI 中找到中介服務群組 ID 方法是使用 accounts.mediationGroups:list敬上 方法。

    您需要指定 treatmentMediationLines敬上 和 treatmentTrafficPercentage, 不過, controlMediationLines 這些元件會沿用自上層中介服務群組 。

    下列請求會建立中介服務 A/B 實驗,並將 實驗組變化版本 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 實驗 ID,YYYYYYYYYY 則代表 廣告單元的最後 10 位數字 ID,請依循以下格式: 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敬上 為執行中的中介服務 A/B 實驗和 NOT_RUNNING,已設為 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 替換成您的發布商 IDZZZZZZZZZZ: 中介服務群組 ID您可以在 AdMob UI 中找到中介服務群組 ID 方法是使用 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",
    }