מודעות באנר תופסות מקום בפריסה של האפליקציה, בחלק העליון או התחתון של מסך המכשיר. הן מוצגות במסך גם בזמן אינטראקציות של המשתמשים באפליקציה, ויכול להיות שיתבצע רענון אוטומטי שלהן אחרי פרק זמן מסוים.
המדריך הזה יעזור לכם להתחיל להשתמש במודעות באנר מותאמות ומעוגנות. מודעות באנר מותאמות ומעוגנות מבצעות אופטימיזציה של גודל המודעה לכל מכשיר, בהתאם לרוחב המודעה שציינתם.
מודעות באנר מותאמות ומעוגנות הן מודעות עם יחס גובה-רוחב קבוע, ולא מודעות עם גודל קבוע. יחס הגובה-רוחב דומה ל-320x50. אחרי שמציינים את הרוחב המלא שזמין, Google Mobile Ads Flutter Plugin מחזירה מודעה עם גובה אופטימלי לרוחב הזה. הגובה האופטימלי של המודעה נשאר קבוע בבקשות שונות להצגת מודעות, והתוכן שמסביב למודעה נשאר במקום כשהמודעה מתרעננת.
תמיד כדאי לבצע בדיקות באמצעות מודעות בדיקה
כשמפתחים ובודקים את האפליקציות, חשוב להשתמש במודעות בדיקה ולא במודעות פעילות לפרסום מוצרים. אחרת, אנחנו עלולים להשעות את החשבון.
הדרך הכי קלה לטעון מודעות לבדיקה היא להשתמש במזהה יחידת המודעות הייעודית לבדיקה של מודעות באנר:
Android
ca-app-pub-3940256099942544/9214589741
iOS
ca-app-pub-3940256099942544/2435281174
יחידות המודעות הייעודיות לבדיקה מוגדרות כך שהן מחזירות מודעות בדיקה לכל בקשה, ואתם יכולים להשתמש בהן באפליקציות שלכם בזמן התכנות, הבדיקה וניפוי הבאגים. רק אל תשכחו להחליף אותם במזהים של יחידות המודעות שלכם לפני שתפרסמו את האפליקציה.
איך מקבלים את גודל המודעה
מודעות באנר מותאמות גדולות הן פורמט גדול יותר שמיועד לפריסות ללא גלילה. בהשוואה למודעות באנר מותאמות ומעוגנות רגילות, במודעות האלה הגובה המקסימלי יכול להיות גדול יותר (עד 20% מגובה המסך, בין 50 ל-150dp). המרחב המוגדל הזה מותאם לקטע וידאו.
כדי לבקש מודעת באנר בגודל הנכון, פועלים לפי השלבים הבאים:
כדי לקבל את רוחב המסך של המכשיר בפיקסלים שלא תלויים בדחיסות (dp), משתמשים ב-
MediaQuery.of(context). אם אתם לא רוצים להשתמש ברוחב המסך המלא, אתם יכולים להגדיר רוחב משלכם.משתמשים בשיטה הסטטית המתאימה במחלקה
AdSizeכדי לקבל אובייקטAdSize. לדוגמה, משתמשים ב-AdSize.getLargeAnchoredAdaptiveBannerAdSize(int width)כדי לקבל את גודל המודעה עבור הכיוון הנוכחי.
// Get an AnchoredAdaptiveBannerAdSize before loading the ad.
final size = await AdSize.getLargeAnchoredAdaptiveBannerAdSize(
MediaQuery.sizeOf(context).width.truncate(),
);
טעינת מודעה
בדוגמה הבאה נטענת מודעת באנר:
מחליפים את הקטע _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 עובר בירושה מהמחלקה Widget של 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 מוסר מעץ הווידג'טים או בקריאה החוזרת (callback) של BannerAdListener.onAdFailedToLoad().
זהו! האפליקציה מוכנה עכשיו להצגת מודעות באנר.
מגבלת גלילה ב-Android 9 ומטה
ידוע לנו שבמכשירים ישנים יותר או במכשירים חלשים יותר שפועלת בהם מערכת Android 9 או גרסה מוקדמת יותר, יכול להיות שהביצועים לא יהיו אופטימליים כשמוצגות מודעות באנר מוטבעות בתצוגות שניתן לגלול בהן. מומלץ להשתמש בסוגי הבאנרים האלה רק ב-Android מגרסה 10 ואילך. מודעות באנר במיקום קבוע, כמו מודעות באנר מעוגנות, לא מושפעות מהשינוי הזה, ואפשר להשתמש בהן עם ביצועים אופטימליים בכל רמות ה-API של Android.
דוגמה פתורה ב-GitHub
בדמו של ה-API אפשר לראות את הדוגמה המלאה.
מידע על סוגים אחרים של באנרים
כדאי להכיר את הסוגים האחרים של מודעות באנר שמוגדרים בקטע הזה לאפליקציית Flutter.
מודעות באנר מותאמות שמוצגות בתוך הטקסט
הגובה של מודעות באנר מותאמות שמוצגות בתוך הטקסט משתנה, והן גדולות יותר ממודעות באנר מותאמות ומעוגנות. מומלץ להשתמש במודעות באנר מותאמות שמוצגות בתוך הטקסט באפליקציות שבהן מודעות הבאנר מוצגות בתוכן שאפשר לגלול בו, ולא במודעות באנר מותאמות שמוצגות כמודעות עוגן. פרטים נוספים זמינים במאמר בנושא מודעות באנר מותאמות שמוצגות בתוך התוכן.
מודעות באנר שאפשר לכווץ
מודעות באנר שאפשר לכווץ הן מודעות באנר שמוצגות בהתחלה כשכבת-על גדולה יותר, עם כפתור שאפשר ללחוץ עליו כדי לכווץ אותן לגודל קטן יותר. כדאי להשתמש בהודעה הזו כדי לשפר עוד יותר את הביצועים. מידע נוסף זמין במאמר מודעות באנר שאפשר לכווץ.