コードを少し変更するだけで、広告リクエストでネイティブ広告とバナー広告を組み合わせることができます。
前提条件
- Google Mobile Ads SDK のバージョン 11.0.0 以降。
- スタートガイドの手順を完了していること
広告を読み込む
カスタム レンダリングされるネイティブ広告は、AdLoader
クラスを使用して読み込まれます。このクラスには、作成時にカスタマイズするための独自の AdLoader.Builder
クラスがあります。作成時に AdLoader
にリスナーを追加することで、アプリで受信可能な広告フォーマットのタイプを指定できます。AdLoader
は指定されたタイプのみをリクエストします。
バナー広告またはネイティブ広告を生成する広告リクエストを行うように AdLoader
オブジェクトを設定することもできます。作成時に OnAdManagerAdViewLoadedListener
を AdLoader
に追加すると、バナー広告がネイティブ広告と競合して、リクエストを埋めることが指定されます。
次のコードは、1 回のリクエストでネイティブ広告またはバナー広告を読み込む AdLoader
の作成方法を示しています。
Java
AdLoader adLoader = new AdLoader.Builder(context, "/6499/example/nativeandbanner") .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, and so on. } }) .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, "/6499/example/nativeandbanner") .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, and so on. } }) .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build()
上記の forAdManagerAdView()
メソッドは、バナー広告を受け取るために AdLoader
を準備します。forAdManagerAdView()
を呼び出す際は、有効な広告サイズの可変長リストを OnAdManagerAdViewLoadedListener
とともに指定する必要があります。
有効な広告リクエストを行うには、有効な広告サイズを 1 つ以上指定する必要があります。バナー広告が正常に読み込まれると、指定されたリスナー オブジェクトの 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 アド マネージャーの純広告について、手動インプレッション レポートを有効にします。手動インプレッションを使用しているアプリは、インプレッションを記録するタイミングをアプリ側で判断できます。そのためには、
AdManagerAdView.recordManualImpression()
を呼び出します。