การรวมคำขอโฆษณาเนทีฟที่แสดงผลที่กำหนดเองและโฆษณาแบนเนอร์

คุณรวมโฆษณาเนทีฟและโฆษณาแบนเนอร์ในคําขอโฆษณาได้ด้วยการทําการเปลี่ยนแปลงโค้ดเพียงเล็กน้อย

ข้อกำหนดเบื้องต้น

  • SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 11.0.0 ขึ้นไป
  • ทําตามขั้นตอนเริ่มต้นใช้งานให้เสร็จสมบูรณ์

การโหลดโฆษณา

ระบบจะโหลดโฆษณาเนทีฟที่แสดงผลตามที่กำหนดเองโดยใช้คลาส AdLoader ซึ่งมีคลาส AdLoader.Builder ของตัวเองเพื่อปรับแต่งระหว่างการสร้าง การเพิ่ม AdLoader ลงใน AdLoader ขณะสร้างแอปจะระบุประเภทรูปแบบโฆษณาที่พร้อมรับ จากนั้น AdLoader จะขอเฉพาะประเภทเหล่านั้น

นอกจากนี้ คุณยังกําหนดค่าออบเจ็กต์ AdLoader เพื่อส่งคําขอโฆษณาที่อาจส่งผลให้เกิดโฆษณาแบนเนอร์หรือโฆษณาเนทีฟได้ด้วย การเพิ่ม OnAdManagerAdViewLoadedListener ลงใน AdLoader ขณะสร้างจะระบุว่าโฆษณาแบนเนอร์ควรแข่งขันกับโฆษณาเนทีฟเพื่อตอบสนองคําขอ

โค้ดต่อไปนี้แสดงวิธีสร้าง 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, 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, "/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, 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 เพื่อรับโฆษณาแบนเนอร์ คุณต้องระบุรายการขนาดโฆษณาที่ถูกต้องซึ่งมีความยาวแปรผันควบคู่ไปกับ OnAdManagerAdViewLoadedListener เมื่อเรียกใช้ forAdManagerAdView()

คุณต้องระบุขนาดโฆษณาที่ถูกต้องอย่างน้อย 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 Ad Manager แอปที่ใช้การแสดงผลด้วยตนเองจะกำหนดได้เองว่าควรบันทึกการแสดงผลเมื่อใด โดยสามารถดำเนินการได้โดยเรียกใช้ AdManagerAdView.recordManualImpression()