בעזרת כמה שינויים בקוד, אפשר לשלב מודעות מותאמות ומודעות באנר בבקשות להצגת מודעות.
דרישות מוקדמות
- גרסה 11.0.0 ומעלה של Google Mobile Ads SDK.
- צריך לקרוא את המדריך לתחילת העבודה.
טעינת מודעה
מודעות מותאמות בעיבוד מותאם אישית נטענות באמצעות המחלקה AdLoader, שיש לה מחלקה משלה, AdLoader.Builder, להתאמה אישית במהלך היצירה. כשמוסיפים מאזינים ל-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, etc. } }) .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, etc. } }) .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build()
השיטה forAdManagerAdView() מכינה את AdLoader לקבלת מודעות באנר.
כשמפעילים את forAdManagerAdView(), צריך לציין רשימה באורך משתנה של גודלי מודעות חוקיים לצד OnAdManagerAdViewLoadedListener.
כדי לשלוח בקשה תקינה להצגת מודעה, צריך לציין לפחות גודל מודעה תקין אחד. כאשר מודעת באנר נטענת בהצלחה, מתבצעת קריאה ל-method onAdManagerAdViewLoaded() של אובייקט ה-listener שצוין.
צריך להגדיר גודל מודעה שקטן מגודל המסך של המכשיר או שווה לו.
כדי לקבוע את גודל המסך המקסימלי, משתמשים ב-method Resources.getDisplayMetrics. המידות של האובייקט AdSize מוגדרות בפיקסלים שלא תלויים בדחיסות (dp). כשמשווים, צריך להמיר את גודל המסך מפיקסלים ל-dp.
פרטים על מגבלות הגודל מופיעים במאמר בנושא פתרון בעיות שקשורות לחשיפות שלא מולאו ב-Ad Manager.
הגדרת האובייקט 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().