合併原生廣告和橫幅廣告請求

只要稍微修改程式碼,您就能在廣告請求中同時加入原生廣告和橫幅廣告。

必要條件

  • Google Mobile Ads SDK 11.0.0 以上版本。

載入廣告

自訂顯示原生廣告會透過 AdLoader 類別載入,該類別有自己的 AdLoader.Builder 類別,可在建立期間自訂。在建構時將監聽器新增至 AdLoader,應用程式即可指定要接收的廣告格式類型。這樣一來,AdLoader 就只會要求指定的類型。

您也可以設定 AdLoader 物件,發出廣告請求,進而顯示橫幅廣告或原生廣告。在建構 AdLoader 時新增 OnAdManagerAdViewLoadedListener,即可指定橫幅廣告應與原生廣告競爭,爭取供應廣告請求的機會。

以下程式碼示範如何建構 AdLoader,以便在單一要求中載入原生廣告或橫幅廣告:

Java

AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner")
    .forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
      @Override
      public void onNativeAdLoaded(NativeAd nativeAd) {
        // Show the ad.
      }
    })
    .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() {
      @Override
      public void onAdManagerAdViewLoaded(AdManagerAdView adView) {
        // Show the banner ad.
      }
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(new AdListener() {
      @Override
      public void onAdFailedToLoad(LoadAdError error) {
        // Handle the failure by logging, altering the UI, etc.
      }
    })
    .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build();

Kotlin

val adLoader = AdLoader.Builder(this, "/21775744923/example/native-and-banner")
    .forNativeAd { nativeAd ->
      // Show the ad.
    }
    .forAdManagerAdView({ adView ->
      // Show the banner ad.
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(object: AdListener() {
      override fun onAdFailedToLoad(adError: LoadAdError) {
        // Handle the failure by logging, altering the UI, etc.
      }
    })
    .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build()

forAdManagerAdView() 方法會準備 AdLoader 接收橫幅廣告。呼叫 forAdManagerAdView() 時,必須指定有效廣告大小的可變長度清單和 OnAdManagerAdViewLoadedListener

如要發出有效的廣告請求,至少必須指定一個有效的廣告尺寸。橫幅廣告載入成功後,系統會呼叫指定監聽器物件的 onAdManagerAdViewLoaded() 方法。

設定 AdViewOptions 物件

建立 AdLoader 時包含的最後一個函式是另一個選用方法 withAdManagerAdViewOptions()

Java

.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

Kotlin

.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

發布商可透過 AdManagerAdViewOptions 物件,為 AdLoader 載入的橫幅設定特定選項,例如:

setManualImpressionsEnabled()
啟用 Google Ad Manager 預訂的手動曝光報表功能。使用手動曝光的應用程式可自行決定何時應記錄曝光,並呼叫 AdManagerAdView.recordManualImpression() 執行這項操作。