开始使用

借助 AdMob 中介功能,您可以通过 多个来源,包括 AdMob 广告联盟和第三方广告来源, 一个地方。AdMob 中介功能可帮助您最大限度地提高填充率, 向多个广告联盟发送广告请求,确保找到 最适合投放广告的网络。 案例研究

前提条件

在为广告格式集成中介之前,您需要先将 广告格式:

第一次使用中介功能?已读 AdMob 中介概览

对于出价: Google 移动广告 SDK 7.53.1 或更高版本。

初始化移动广告 SDK

本快速入门指南介绍了如何初始化移动广告 SDK。在初始化调用期间,中介适配器还会 进行初始化。请务必等到初始化完成后 您加载广告,是为了确保所有广告联盟 发出调用请求

以下示例代码展示了如何检查每个适配器的初始化 然后再发出广告请求

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    let ads = GADMobileAds.sharedInstance()
    ads.start { status in
      // Optional: Log each adapter's initialization latency.
      let adapterStatuses = status.adapterStatusesByClassName
      for adapter in adapterStatuses {
        let adapterStatus = adapter.value
        NSLog("Adapter Name: %@, Description: %@, Latency: %f", adapter.key,
        adapterStatus.description, adapterStatus.latency)
      }

      // Start loading ads here...
    }

    return true
  }

}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  GADMobileAds *ads = [GADMobileAds sharedInstance];
  [ads startWithCompletionHandler:^(GADInitializationStatus *status) {
    // Optional: Log each adapter's initialization latency.
    NSDictionary *adapterStatuses = [status adapterStatusesByClassName];
    for (NSString *adapter in adapterStatuses) {
      GADAdapterStatus *adapterStatus = adapterStatuses[adapter];
      NSLog(@"Adapter Name: %@, Description: %@, Latency: %f", adapter,
            adapterStatus.description, adapterStatus.latency);
    }

    // Start loading ads here...
  }];
  return YES;
}

@end

了解哪个广告联盟的胜出

每个广告格式类都具有一个包含 adNetworkClassNameGADResponseInfo 属性,该属性可返回当前广告的广告联盟的类名称。仅当广告成功加载后,adNetworkClassName 才具有值 。以下代码展示了如何获取横幅广告的这项信息。

Swift

func adViewDidReceiveAd(_ bannerView: GADBannerView) {
  print("Banner adapter class name: \(bannerView.responseInfo.adNetworkClassName)")
}

Objective-C

- (void)adViewDidReceiveAd:(GADBannerView *)bannerView {
  NSLog(@"Banner adapter class name: %@", bannerView.responseInfo.adNetworkClassName);
}

请参考检索有关广告的信息 响应以了解详情。

确保在横幅广告的所有第三方广告来源界面中停用刷新功能 AdMob 中介所使用的广告单元数量。这可防止重复刷新,因为 AdMob 还会根据横幅广告单元的 刷新率。

搭配使用原生广告和 AdMob 中介

以下是植入原生广告时可以考虑的一些最佳做法 AdMob 中介。

原生广告展示政策
每个广告网络都有自己的政策。使用中介功能时,请务必 请注意,您的应用仍需遵守参与中介的 广告联盟。
在发出请求时避免使用 GADMultipleAdsAdLoaderOptions
针对多个原生广告的请求仅会投放 Google 广告。多元原生 广告功能不支持中介。

美国州级隐私保护法律和 GDPR

如果您需要遵守美国州/省/自治区/直辖市隐私权 法律一般数据保护 条例 (GDPR),请遵循 美国州级法规中的步骤 设置GDPR 设置以添加您的 AdMob 中的中介合作伙伴 - 隐私权和消息功能 美国各州或 GDPR 广告合作伙伴列表。否则,可能会导致合作伙伴无法在您的应用中投放广告。

详细了解如何启用“受限的数据处理” (RDP) 以及遵守 GDPR 通过 Google User Messaging Platform (UMP) 征求用户意见 SDK