只要稍微修改程式碼,您就能在廣告請求中同時加入原生廣告和橫幅廣告。
必要條件
- 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()
執行這項操作。