中介服務


採用 AdMob 中介服務,應用程式即可放送眾多來源的廣告,包括 AdMob 聯播網、第三方廣告聯播網和 AdMob 廣告活動的廣告。AdMob 中介服務會向多個聯播網送出廣告請求,以確保您透過最合適的聯播網放送廣告,進而提高您的廣告供應率和收益。個案研究

必要條件

如要整合廣告格式的中介服務,請先將該廣告格式整合至應用程式:

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

初始化 Mobile Ads SDK

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

每則廣告結果都包含擷取目前廣告的廣告聯播網類別名稱相關資訊。

以下是範例程式碼,可從 AdView 傳回的 AdResult 中記錄廣告聯播網類別名稱。插頁式廣告和獎勵廣告可使用類似的程式碼:

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.
}

請務必在所有第三方廣告聯播網 UI 中,停用 AdMob 中介服務所用橫幅廣告單元的重新整理功能。這樣可避免重複重新整理,因為 AdMob 也會根據橫幅廣告單元的重新整理頻率觸發重新整理。

後續步驟

Google Mobile Ads C++ SDK 會包裝 Android 和 iOS SDK 實作項目,以進行中介服務。因此,包括中介服務介面卡安裝作業在內的進一步設定,都僅適用於 Android 和 iOS 平台。詳情請參閱 Google Mobile Ads Android SDK 選擇聯播網指南Google Mobile Ads iOS SDK 選擇聯播網指南