Kết hợp yêu cầu quảng cáo gốc và quảng cáo biểu ngữ

Chỉ cần thay đổi một chút trong mã, bạn có thể kết hợp quảng cáo gốc và quảng cáo biểu ngữ trong các yêu cầu quảng cáo.

Điều kiện tiên quyết

Tải một quảng cáo

Để đưa ra yêu cầu kết hợp quảng cáo gốc và quảng cáo biểu ngữ, hãy làm như sau:

  1. Truyền cả loại NativeAdType.NATIVE và loại NativeAdType.BANNER dưới dạng một danh sách trong NativeAdRequest.

  2. Đặt ít nhất một kích thước quảng cáo biểu ngữ.

Ví dụ sau đây tải một quảng cáo gốc và quảng cáo biểu ngữ kết hợp:

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());

Nhận quảng cáo từ đối tượng NativeAdLoaderCallback

Tuỳ thuộc vào loại quảng cáo đã tải thành công, đối tượng NativeAdLoaderCallback sẽ gọi phương thức onNativeAdLoaded() cho quảng cáo gốc và phương thức onBannerAdLoaded() cho quảng cáo biểu ngữ.

Ví dụ sau đây lấy quảng cáo biểu ngữ hoặc quảng cáo gốc:

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