開始學習

您可以藉助 AdMob 中介服務,在同一個位置管理所有在應用程式中放送廣告時的廣告來源。AdMob 中介服務會向多個聯播網送出廣告請求,以確保您透過最合適的聯播網放送廣告,進而提高您的廣告供應率和收益。個案研究

必要條件

您必須先將廣告格式整合至應用程式,才能整合廣告格式的中介服務:

第一次使用中介服務嗎?請參閱「AdMob 中介服務總覽」。

出價: Google Mobile Ads SDK 7.53.1 以上版本。

初始化 Mobile Ads SDK

快速入門指南會說明如何初始化 Mobile Ads 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

瞭解哪個廣告聯播網勝出

每個廣告格式類別都有一個 GADResponseInfo 屬性,其中包含 adNetworkClassName,可傳回目前廣告的廣告聯播網類別名稱。廣告成功載入後,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 中介服務中使用的橫幅廣告單元,在所有第三方廣告來源 UI 中停用重新整理功能。這樣可避免重複重新整理,因為 AdMob 也會根據橫幅廣告單元的重新整理頻率觸發重新整理。

搭配 AdMob 中介服務使用原生廣告

以下是實作 AdMob 中介服務的原生廣告時,可考慮採用的最佳做法。

原生廣告呈現方式政策
每個廣告聯播網都有各自的政策。使用中介服務時,請務必記住,您的應用程式仍須遵守提供廣告的中介服務網路的政策。
提出要求時,請避免使用 GADMultipleAdsAdLoaderOptions 類別
請求多個原生廣告時,系統只會放送 Google 廣告。多個原生廣告功能不支援中介服務。

美國州級隱私權法律和 GDPR

如果您需要遵守美國州級隱私權法律一般資料保護規則 (GDPR),請按照美國州級法規設定GDPR 設定中的步驟,在 AdMob 隱私權與訊息的美國州別或 GDPR 廣告合作夥伴名單中新增中介合作夥伴。否則合作夥伴可能無法在您的應用程式中放送廣告。

進一步瞭解如何啟用受限的資料處理 (RDP),以及如何使用 Google User Messaging Platform (UMP) SDK 取得 GDPR 同意聲明。