Kết hợp yêu cầu quảng cáo biểu ngữ và quảng cáo gốc hiển thị tuỳ chỉnh

Chỉ cần thực hiện một vài thay đổi đối với mã là 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 của mình.

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

  • SDK Quảng cáo của Google trên thiết bị di động phiên bản 11.0.0 trở lên.
  • Hoàn thành các bước Bắt đầu.

Đang tải quảng cáo

Quảng cáo gốc hiển thị tuỳ chỉnh được tải bằng cách sử dụng lớp AdLoader. Lớp này có lớp AdLoader.Builder riêng để tuỳ chỉnh trong quá trình tạo. Bằng cách thêm trình nghe vào AdLoader trong khi tạo ứng dụng, ứng dụng sẽ chỉ định các loại định dạng quảng cáo mà ứng dụng có thể nhận. Sau đó, AdLoader chỉ yêu cầu các loại đó.

Bạn cũng có thể định cấu hình đối tượng AdLoader để tạo các yêu cầu quảng cáo có thể dẫn đến quảng cáo biểu ngữ hoặc quảng cáo gốc. Việc thêm OnAdManagerAdViewLoadedListener vào AdLoader trong khi tạo quảng cáo này sẽ chỉ định rằng quảng cáo biểu ngữ phải cạnh tranh với quảng cáo gốc để thực hiện yêu cầu.

Mã sau đây minh hoạ cách tạo AdLoader có thể tải quảng cáo gốc hoặc quảng cáo biểu ngữ trong một yêu cầu:

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

Phương thức forAdManagerAdView() ở trên chuẩn bị AdLoader để nhận quảng cáo biểu ngữ. Bạn phải chỉ định danh sách có độ dài thay đổi cho các kích thước quảng cáo hợp lệ cùng với OnAdManagerAdViewLoadedListener khi gọi forAdManagerAdView().

Để tạo yêu cầu quảng cáo hợp lệ, ít nhất một kích thước quảng cáo hợp lệ phải được chỉ định. Khi quảng cáo biểu ngữ tải thành công, phương thức onAdManagerAdViewLoaded() của đối tượng trình nghe được chỉ định sẽ được gọi.

Đặt AdViewOptions

Hàm cuối cùng trong quá trình tạo AdLoader ở trên là một phương thức không bắt buộc khác, 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()

Đối tượng AdManagerAdViewOptions cho phép nhà xuất bản đặt các tuỳ chọn cụ thể cho biểu ngữ do AdLoader tải, chẳng hạn như:

setManualImpressionsEnabled()
Bật tính năng báo cáo lượt hiển thị thủ công cho các mẫu đặt trước trong Google Ad Manager. Các ứng dụng sử dụng lượt hiển thị thủ công có thể tự xác định thời điểm cần ghi lại lượt hiển thị và có thể thực hiện việc này bằng cách gọi AdManagerAdView.recordManualImpression().