AdMob API 可创建中介 A/B 实验,以充分发挥广告效果 来提升性能A/B 测试可用于评估 中介组的两个变体来并排比较结果 选择首选配置。
以下是您可以设置的实验示例:
- 添加或移除广告来源以查看其对中介组的影响
- 通过更改广告的人工有效每千次展示费用值来使用不同的广告瀑布流顺序 来源
- 启用或停用对瀑布流广告来源进行优化
- 更改向广告来源发出广告请求的次数
示例
先从现有中介组着手,然后创建中介组的变体 变体 A 和 B 哪个效果更好。该测试会将您的应用用户 现有中介组设置和变体之间的效果差异 (1%、10% 或 50%)。
curl(命令行)
使用 curl 的请求
加载客户端密钥文件并生成授权 凭据。
首次执行此步骤时,系统会要求您接受 授权提示。在接受之前,请确保您已 使用有权访问 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
创建中介 A/B 实验。
将
pub-XXXXXXXXXXXXXXXX
替换为您的发布商 ID和ZZZZZZZZZZ
与您的 中介组 ID。中介组 ID 可在 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 实验 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" }
验证中介 A/B 实验是否正在运行。
致电
accounts.mediationGroups:list
以获取该中介组的中介 A/B 实验状态。请参阅 中介组 指南,了解更多信息 。通过
mediationAbExperimentState
对于有效中介 A/B 实验,设置为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)"
停止中介 A/B 实验并选择一个变体。
将
pub-XXXXXXXXXXXXXXXX
替换为您的发布商 ID和ZZZZZZZZZZ
与您的 中介组 ID。中介组 ID 可在 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", }