只需对代码进行一些更改,您就可以在广告请求中结合使用原生广告和横幅广告。
前提条件
- 通读入门指南。
加载广告
如需发出原生广告和横幅广告组合请求,请执行以下操作:
在
NativeAdRequest中以列表形式传递NativeAdType.NATIVE类型和NativeAdType.BANNER类型。请至少设置一种横幅广告尺寸。
以下示例会加载一个原生广告和横幅广告组合:
Kotlin
val adRequest =
NativeAdRequest.Builder(AD_UNIT_ID, listOf(NativeAdType.NATIVE, NativeAdType.BANNER))
// Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
.setAdSizes(listOf(AdSize.BANNER, AdSize.LARGE_BANNER))
.build()
// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback())
Java
NativeAdRequest adRequest =
new NativeAdRequest.Builder(AD_UNIT_ID, List.of(NativeAdType.NATIVE, NativeAdType.BANNER))
// Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
.setAdSizes(Arrays.asList(AdSize.BANNER, AdSize.LARGE_BANNER))
.build();
// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback());
设置小于或等于设备屏幕尺寸的广告尺寸。
如需确定屏幕尺寸上限,请使用 Resources.getDisplayMetrics 方法。AdSize 对象的尺寸以密度无关像素 (dp) 为单位。进行比较时,请将屏幕尺寸从像素转换为 dp。
如需详细了解尺寸限制,请参阅在 Ad Manager 中针对广告空缺的展示进行问题排查。
从 NativeAdLoaderCallback 对象中获取广告
根据成功加载的广告类型,NativeAdLoaderCallback 对象会针对原生广告调用 onNativeAdLoaded() 方法,针对横幅广告调用 onBannerAdLoaded() 方法。
以下示例展示了如何获取横幅广告或原生广告:
Kotlin
private fun getNativeAdLoaderCallback(): NativeAdLoaderCallback {
return object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Called when a native ad has loaded.
}
override fun onBannerAdLoaded(bannerAd: BannerAd) {
// Called when a banner ad has loaded.
}
}
}
Java
private NativeAdLoaderCallback getNativeAdLoaderCallback() {
return new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Called when a native ad has loaded.
}
@Override
public void onBannerAdLoaded(@NonNull BannerAd bannerAd) {
// Called when a banner ad has loaded.
}
};
}