מודעת מעברון מתגמלת היא פורמט של מודעה שמופיע באופן אוטומטי בנקודות מעבר טבעיות באפליקציה ומאפשר לכם להציע תגמולים. בשונה ממודעות מתגמלות רגילות, המשתמשים לא צריכים להביע הסכמה לצפייה במודעות מעברון מתגמלות. במדריך הזה מוסבר איך לשלב באפליקציית Flutter מודעות מעברון מתגמלות מ-Ad Manager.
דרישות מוקדמות
לפני שממשיכים, צריך לבצע את הפעולות הבאות:
- מתקינים את הפלאגין של Flutter בגרסה 1.1.0 ואילך.
- מגדירים את Google Mobile Ads Flutter Plugin. באפליקציית Flutter צריך לייבא את Google Mobile Ads Flutter Plugin.
תמיד צריך לבדוק באמצעות מודעות בדיקה
כשאתם מפתחים ובודקים את האפליקציות, חשוב להשתמש במודעות בדיקה ולא במודעות פעילות. אחרת, אנחנו עלולים להשעות את החשבון.
הדרך הכי קלה לטעון מודעות בדיקה היא להשתמש במזהה יחידת המודעות הייעודי לבדיקה של מודעות מעברון מתגמלות:
/21775744923/example/rewarded-interstitial
יחידות המודעות הייעודיות לבדיקה מוגדרות כך שהן מחזירות מודעות בדיקה לכל בקשה, ואתם יכולים להשתמש בהן באפליקציות שלכם בזמן התכנות, הבדיקה וניפוי הבאגים. רק חשוב להחליף אותם במזהים של יחידות המודעות שלכם לפני שאתם מפרסמים את האפליקציה.
טעינת מודעה
בדוגמה הבאה נטענת מודעת מעברון מתגמלת:
מחליפים את הקטע _adUnitId במזהה יחידת המודעות.
אירועים של מודעות מעברון מתגמלות
באמצעות FullScreenContentCallback, אתם יכולים להאזין לאירועים במחזור החיים, כמו הצגת המודעה או סגירת המודעה. כדי לקבל התראות על האירועים האלה, צריך להגדיר את RewardedInterstitialAd.fullScreenContentCallback לפני הצגת המודעה. בדוגמה הזו, כל שיטה מיושמת ומתבצע רישום של הודעה ביומן במסוף:
ad.fullScreenContentCallback = FullScreenContentCallback(
onAdShowedFullScreenContent: (ad) {
// Called when the ad showed the full screen content.
debugPrint('Ad showed full screen content.');
},
onAdFailedToShowFullScreenContent: (ad, err) {
// Called when the ad failed to show full screen content.
debugPrint('Ad failed to show full screen content with error: $err');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdDismissedFullScreenContent: (ad) {
// Called when the ad dismissed full screen content.
debugPrint('Ad was dismissed.');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdImpression: (ad) {
// Called when an impression occurs on the ad.
debugPrint('Ad recorded an impression.');
},
onAdClicked: (ad) {
// Called when a click is recorded for an ad.
debugPrint('Ad was clicked.');
},
);
מודעה ברשת המדיה
RewardedInterstitialAd מוצג כשכבת-על מעל כל תוכן האפליקציה והוא ממוקם באופן סטטי, ולכן אי אפשר להוסיף אותו לעץ הווידג'טים של Flutter.
כדי לבחור מתי להציג את המודעה, אפשר להפעיל את show().
הפונקציה RewardedInterstitialAd.show() מקבלת OnUserEarnedRewardCallback, שמופעל כשמשתמש מקבל תגמול. חשוב להטמיע את זה ולתגמל את המשתמש על הצפייה במודעה.
_rewardedInterstitialAd?.show(
onUserEarnedReward: (AdWithoutView ad, RewardItem rewardItem) {
debugPrint('Reward amount: ${rewardItem.amount}');
},
);
אחרי שמתבצעת קריאה ל-show(), אי אפשר להסיר באופן פרוגרמטי Ad שמוצג בצורה הזו, ונדרש קלט מהמשתמש. אפשר להציג RewardedInterstitialAd רק פעם אחת. קריאות עוקבות להצגה יפעילו את onAdFailedToShowFullScreenContent.
צריך להסיר מודעה כשכבר לא צריך גישה אליה. השיטה המומלצת היא להפעיל את dispose() בקריאות החוזרות (callbacks) של FullScreenContentCallback.onAdDismissedFullScreenContent ו-FullScreenContentCallback.onAdFailedToShowFullScreenContent.
[אופציונלי] אימות קריאות חוזרות של אימות בצד השרת (SSV)
באפליקציות שנדרשים בהן נתונים נוספים בקריאות חוזרות (callback) של אימות בצד השרת (SSV), צריך להשתמש בתכונה "נתונים מותאמים אישית" של מודעות מתגמלות. כל ערך מחרוזת שמוגדר באובייקט של מודעה מתגמלת מועבר לפרמטר השאילתה custom_data של הקריאה החוזרת ל-SSV. אם לא מוגדר ערך של נתונים מותאמים אישית, הערך של פרמטר השאילתה custom_data לא יופיע בקריאה החוזרת ל-SSV.
בדוגמת הקוד הבאה אפשר לראות איך מגדירים אפשרויות של SSV אחרי שמודעת המעברון המתגמלת נטענת:
מחליפים את SAMPLE_CUSTOM_DATA_STRING בנתונים בהתאמה אישית.