שילוב בקשות למודעות מותאמות ולבקשות למודעות באנר מותאמות אישית

לאחר כמה שינויים בקוד, תוכלו לשלב מודעות מותאמות ומודעות באנר בבקשות למודעות.

דרישות מוקדמות

המודעה נטענת

מודעות מותאמות בעיבוד מותאם אישית נטענות באמצעות המחלקה AdLoader, שיש לה מחלקה AdLoader.Builder משלה כדי להתאים אישית את המחלקה במהלך היצירה. כשמוסיפים מאזינים ל-AdLoader בזמן הפיתוח של האפליקציה, הם מציינים אילו סוגי פורמטים של מודעות היא מוכנה לקבל. לאחר מכן, AdLoader מבקש רק את הסוגים האלה.

ניתן גם להגדיר את האובייקט AdLoader כך שישלח בקשות להצגת מודעות, שעשויות להוביל למודעת באנר או למודעה מותאמת. כשמוסיפים OnAdManagerAdViewLoadedListener ל-AdLoader בזמן שיוצרים אותו, מודעות הבאנר צריכות להתחרות במודעות מותאמות על מנת למלא את הבקשה.

הקוד הבא מדגים איך ליצור 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 לקבל מודעות באנר. יש לציין רשימה באורך משתנה של גודלי מודעות חוקיים לצד השדה OnAdManagerAdViewLoadedListener כשמפעילים את forAdManagerAdView().

כדי לשלוח בקשה חוקית למודעה, יש לציין לפחות גודל מודעה חוקי אחד. כשמודעת באנר נטענת בהצלחה, מתבצעת קריאה ל-method onAdManagerAdViewLoaded() של אובייקט ה-listener.

הגדרת 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().