通过 AdMob 中介功能,您可以在自己的应用中投放多个来源(包括 AdMob 广告联盟、第三方广告联盟和 AdMob 广告系列)的广告。AdMob 中介 通过向合作伙伴发送广告 向多个广告网络发送请求,以确保您能找到最适合用于 投放广告。 案例。
前提条件
在为广告格式集成中介之前,您需要先将 广告格式:
第一次使用中介功能?阅读 AdMob 概览 中介。
初始化移动广告 SDK
快速入门指南介绍了如何初始化移动广告 SDK。 在初始化调用期间,中介适配器也会初始化。请务必在初始化完成后再加载广告,以确保每个广告联盟都可完全参与第一个广告请求。
以下示例代码展示了如何检查每个适配器的初始化 然后再发出广告请求
// Initialize the Google Mobile Ads library
firebase::gma::Initialize(*app);
// In a game loop, monitor the initialization status
auto initialize_future = firebase::gma::InitializeLastResult();
if (initialize_future.status() == firebase::kFutureStatusComplete &&
initialize_future.error() == firebase::gma::kAdErrorCodeNone) {
// Initialization completed successfully, log the adapter status:
std::map<std::string, firebase::gma::AdapterStatus> adapter_status_map =
firebase::gma::GetInitializationStatus().GetAdapterStatusMap();
for (auto it = adapter_status_map.begin(); it != adapter_status_map.end(); ++it) {
std::string adapter_class_name = it->first;
firebase::gma::AdapterStatus adapter_status = it->second;
printf(“adapter: %s \t description: %s \t is_initialized: %d latency: %d\n”,
adapter_class_name.c_str(),
adapter_status.description().c_str(),
adapter_status.is_initialized(),
adpater_status.latency());
}
} else {
// Handle initialization error.
}
如需详细了解如何使用 Future,请参阅使用 Future 来监控方法调用的完成状态。
查看 adNetworkClassName
的值
每个广告结果都包含有关广告联盟的类名称的信息, 提取了当前广告。
下面是从 AdResult
记录广告网络类名称的示例代码
从 AdView
返回的值。类似的代码也可用于插页式广告和
激励广告:
firebase::Future<AdResult> load_ad_future = banner_view.loadAd(ad_request);
// In a game loop, monitor the ad load status
if (load_ad_future.status() == firebase::kFutureStatusComplete &&
load_ad_future.error() == firebase::gma::kAdErrorCodeNone) {
const AdResult* ad_result = load_ad_future.result();
printf(“Loaded ad with adapter class name: %s\n”,
ad_result->adapter_class_name().c_str());
} else {
// Handle the load ad error.
}
横幅广告中介
确保在所有第三方广告联盟界面中停用横幅广告的刷新功能 AdMob 中介所使用的广告单元数量。这可防止重复刷新,因为 AdMob 还会根据横幅广告单元的刷新频率触发刷新。
后续步骤
Google 移动广告 C++ SDK 会封装 Android 和 iOS SDK 实现以进行中介。因此需要进一步配置,包括 中介适配器仅适用于 Android 和 iOS 平台。有关 相关信息,请参阅Google 移动广告 Android SDK 选择广告联盟 指南和 Google 移动广告 iOS SDK 选择广告网络 指南。