הגדרת מודעות באנר

בחירת פלטפורמה: Android iOS Unity Flutter Android (Legacy)

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

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

מודעות באנר מותאמות ומעוגנות הן מודעות עם יחס גובה-רוחב קבוע ולא מודעות בגודל קבוע. יחס הגובה-רוחב דומה ל-320x50. אחרי שמציינים את הרוחב המלא שזמין, Google Mobile Ads Flutter Plugin מחזירה מודעה עם גובה אופטימלי לרוחב הזה. הגובה האופטימלי של המודעה נשאר קבוע בבקשות שונות להצגת מודעה, והתוכן שמסביב למודעה נשאר במקומו כשהמודעה מתרעננת.

תמיד כדאי לבצע בדיקות באמצעות מודעות בדיקה

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

הדרך הכי קלה לטעון מודעות לבדיקה היא להשתמש במזהה יחידת המודעות הייעודית לבדיקה של מודעות באנר:

Android

ca-app-pub-3940256099942544/9214589741

iOS

ca-app-pub-3940256099942544/2435281174

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

אחזור גודל המודעה

מודעות באנר מותאמות גדולות הן פורמט גדול יותר שמיועד לפריסות שלא דורשות גלילה. בהשוואה למודעות באנר מותאמות ומעוגנות רגילות, מודעות הבאנר האלה מאפשרות גובה מקסימלי גדול יותר (עד 20% מגובה המסך, בין 50 ל-150dp). המרחב המוגדל הזה מותאם לתוכן וידאו.

כדי לבקש מודעת באנר בגודל הנכון, פועלים לפי השלבים הבאים:

  1. כדי לקבל את רוחב המסך של המכשיר בפיקסלים שלא תלויים בדחיסות (dp), משתמשים ב-MediaQuery.of(context). אם אתם לא רוצים להשתמש ברוחב המסך המלא, אתם יכולים להגדיר רוחב משלכם.

  2. משתמשים בשיטה הסטטית המתאימה במחלקה AdSize כדי לקבל אובייקט AdSize. לדוגמה, משתמשים ב-AdSize.getLargeAnchoredAdaptiveBannerAdSize(int width) כדי לקבל את גודל המודעה עבור הכיוון הנוכחי.

// Get an AnchoredAdaptiveBannerAdSize before loading the ad.
final size = await AdSize.getLargeAnchoredAdaptiveBannerAdSize(
  MediaQuery.sizeOf(context).width.truncate(),
);

טעינת מודעה

בדוגמה הבאה מוצגת טעינה של מודעת באנר:

void _loadAd() async {
  // Get an AnchoredAdaptiveBannerAdSize before loading the ad.
  final size = await AdSize.getLargeAnchoredAdaptiveBannerAdSize(
    MediaQuery.sizeOf(context).width.truncate(),
  );

  if (size == null) {
    // Unable to get width of anchored banner.
    return;
  }

  unawaited(
    BannerAd(
      adUnitId: "_adUnitId",
      request: const AdRequest(),
      size: size,
      listener: BannerAdListener(
        onAdLoaded: (ad) {
          // Called when an ad is successfully received.
          debugPrint('Ad was loaded.');
          setState(() {
            _bannerAd = ad as BannerAd;
          });
        },
        onAdFailedToLoad: (ad, err) {
          // Called when an ad request failed.
          debugPrint('Ad failed to load with error: $err');
          ad.dispose();
        },
      ),
    ).load(),
  );
}

מחליפים את _adUnitId במזהה של יחידת המודעות.

באמצעות BannerAdListener, אפשר להאזין לאירועים במחזור החיים, כמו טעינה של מודעה. בדוגמה הזו מיושמת כל שיטה ומוצגת הודעה במסוף:

onAdOpened: (Ad ad) {
  // Called when an ad opens an overlay that covers the screen.
  debugPrint('Ad was opened.');
},
onAdClosed: (Ad ad) {
  // Called when an ad removes an overlay that covers the screen.
  debugPrint('Ad was closed.');
},
onAdImpression: (Ad ad) {
  // Called when an impression occurs on the ad.
  debugPrint('Ad recorded an impression.');
},
onAdClicked: (Ad ad) {
  // Called when a click event occurs on the ad.
  debugPrint('Ad was clicked.');
},
onAdWillDismissScreen: (Ad ad) {
  // iOS only. Called before dismissing a full screen view.
  debugPrint('Ad will be dismissed.');
},

רענון מודעה

אם הגדרתם את יחידת המודעות לרענון, לא צריך לבקש מודעה אחרת אם המודעה לא נטענת. Google Mobile Ads Flutter Plugin מכבדת כל קצב רענון שציינתם בממשק המשתמש של AdMob. אם לא הפעלתם את הרענון, תצטרכו לשלוח בקשה חדשה. פרטים נוספים על רענון יחידות מודעות, כמו הגדרת קצב רענון, זמינים במאמר שימוש ברענון אוטומטי במודעות באנר.

הצגת מודעת באנר

כדי להציג BannerAd כווידג'ט, צריך ליצור מופע של AdWidget עם מודעה נתמכת אחרי הקריאה ל-load(). אפשר ליצור את הווידג'ט לפני הקריאה ל-load(), אבל צריך לקרוא ל-load() לפני שמוסיפים אותו לעץ הווידג'טים.

‫AdWidget יורש ממחלקת הווידג'טים של Flutter, ואפשר להשתמש בו כמו בכל ווידג'ט אחר. ב-iOS, צריך לוודא שמוסיפים את הווידג'ט לווידג'ט עם רוחב וגובה מוגדרים. אחרת, יכול להיות שהמודעה לא תוצג. אפשר להציב BannerAdבמאגר בגודל שמתאים למודעה:

if (_bannerAd != null)
  Align(
    alignment: Alignment.bottomCenter,
    child: SafeArea(
      child: SizedBox(
        width: _bannerAd!.size.width.toDouble(),
        height: _bannerAd!.size.height.toDouble(),
        child: AdWidget(ad: _bannerAd!),
      ),
    ),
  ),

צריך להשמיד מודעה כשאין יותר צורך בגישה אליה. השיטה המומלצת לקריאה ל-dispose() היא אחרי שרכיב AdWidget מוסר מעץ הווידג'טים או בפונקציית הקריאה החוזרת BannerAdListener.onAdFailedToLoad().

זהו! האפליקציה מוכנה עכשיו להצגת מודעות באנר.

הגבלת הגלילה ב-Android מגרסה 9 ומטה

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

דוגמה מלאה ב-GitHub

דוגמה מלאה זמינה בהדגמה של API.

מידע על סוגים אחרים של באנרים

כדאי להכיר את סוגי הבאנרים האחרים שמוגדרים בקטע הזה עבור אפליקציית Flutter.

מודעות באנר מותאמות שמוצגות בתוך הטקסט

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

מודעות באנר שאפשר לכווץ

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