מודעות באנר

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

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

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

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

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

  • Android: ‏ca-app-pub-3940256099942544/6300978111
  • iOS: ‏ca-app-pub-3940256099942544/2934735716

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

רוצים לדעת איך פועלות מודעות הבדיקה של Mobile Ads SDK? קראו את המאמר מודעות בדיקה.

הטמעה

הגדרת AdView

מודעות באנר מוצגות באובייקטים של AdView, ולכן השלב הראשון בשילוב מודעות באנר הוא ליצור AdView ולמקם אותו.

  1. מוסיפים את הכותרת הבאה לקוד C++ של האפליקציה:

     #include "firebase/gma/ad_view.h"
    
  2. הצהרה ויצירה של אובייקט AdView:

      firebase::gma::AdView* ad_view;
      ad_view = new firebase::gma::AdView();
    
  3. יוצרים AdSize ומפעילים את הצפייה במודעה באמצעות תצוגת ההורה AdParent. תצוגת ההורה היא הפניה של JNI jobject אל Android Activity או מפנה להעברה של UIView ב-iOS מסוג AdParent:

     // my_ad_parent is a jobject reference
     // to an Android Activity or a pointer to an iOS UIView.
     firebase::gma::AdParent ad_parent = static_cast(my_ad_parent);
     firebase::Future result =
       ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner);
    
  4. כחלופה לשמירת העתיד כמשתנה, אפשר לבדוק מדי פעם את הסטטוס של פעולת האתחול על ידי הפעלת InitializeLastResult() באובייקט AdView. המידע הזה יכול לעזור לכם לעקוב אחרי תהליך האתחול ב-game loop הגלובלי.

      // Monitor the status of the future in your game loop:
      firebase::Future<void> result = ad_view->InitializeLastResult();
      if (result.status() == firebase::kFutureStatusComplete) {
        // Initialization completed.
        if(future.error() == firebase::gma::kAdErrorCodeNone) {
          // Initialization successful.
        } else {
          // An error has occurred.
        }
      } else {
        // Initialization on-going.
      }
    
  5. מידע נוסף על עבודה עם firebase::Future זמין במאמר Use Futures כדי לעקוב אחר סטטוס ההשלמה של קריאות method.

הגדרת מיקום המודעה

אפשר להגדיר את המיקום של AdView בכל שלב אחרי ההפעלה:

firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);

טעינת מודעה

אפשר לטעון מודעה אחרי שמפעילים את AdView:

firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);

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

הצגת המודעה

לבסוף, צריך להתקשר אל Show() כדי להציג את המודעה במסך. אפשר להפעיל את השיטה הזו בכל שלב אחרי שמפעילים את המודעה:

firebase::Future<void> result = ad_view->Show();

אירועי מודעות

ערכת C++ SDK של Google Mobile Ads מספקת מחלקה AdListener שאפשר להרחיב ולהעביר אליה אל AdView::SetListener() כדי לקבל הודעה על שינויים במצב התצוגה של המודעה.

הרחבת השיטות ב-AdListener היא אופציונלית, ולכן צריך להטמיע רק את השיטות הרצויות. בהמשך מוצגת דוגמה להטמעה של מחלקה שמרחיבה את כל מחלקת ה-methods של AdListener:

class ExampleAdListener
    : public firebase::gma::AdListener {
 public:
  ExampleAdListener() {}
  void OnAdClicked() override {
    // This method is invoked when the user clicks the ad.
  }

  void OnAdClosed() override {
   // This method is invoked when the user closes the ad.
  }

  void OnAdImpression() override {
    // This method is invoked when an impression is recorded for an ad.
  }

  void OnAdOpened() override {
    // This method is invoked when an ad opens an overlay that covers the screen.
  }
};

ExampleAdListener* ad_listener = new ExampleAdListener();
ad_view->SetAdListener(ad_listener);

בטבלה הבאה מפורטים הגדלים הסטנדרטיים של מודעות באנר.

גודל בנקודות (WxH) תיאור זמינות firebase:gma::AdSize constant
320x50 כרזה טלפונים וטאבלטים kBanner
320x100 מודעת באנר גדולה טלפונים וטאבלטים kLargeBanner
300x250 מלבן בינוני של IAB טלפונים וטאבלטים kMediumRectangle
468x60 מודעת באנר בגודל מלא של IAB טאבלטים kFullBanner
728x90 IAB Leaderboard טאבלטים kLeaderboard
רוחב שסופק x גובה מותאם מודעת באנר מותאמת טלפונים וטאבלטים לא רלוונטי

גדלים מותאמים אישית של מודעות

כדי להגדיר גודל באנר מותאם אישית, מגדירים את המאפיינים הרצויים באמצעות הבנאי firebase::gma::AdSize עם הפרמטרים של width ו-height, כפי שמוצג כאן:

firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);

משאבים נוספים

דוגמה ב-GitHub

סיפורי הצלחה