تبلیغات بنری

بنرهای تبلیغاتی جایی را در طرح‌بندی یک برنامه، چه در بالا و چه در پایین صفحه نمایش دستگاه، اشغال می‌کنند. آن‌ها در حالی که کاربران در حال تعامل با برنامه هستند، روی صفحه می‌مانند و می‌توانند پس از مدت زمان مشخصی به طور خودکار به‌روزرسانی شوند. اگر در تبلیغات موبایل تازه‌کار هستید، آن‌ها نقطه شروع بسیار خوبی هستند. مطالعه موردی .

پیش‌نیازها

همیشه با تبلیغات آزمایشی تست کنید

هنگام ساخت و آزمایش برنامه‌های خود، مطمئن شوید که از تبلیغات آزمایشی به جای تبلیغات زنده و تولیدی استفاده می‌کنید. عدم انجام این کار می‌تواند منجر به مسدود شدن حساب شما شود.

ساده‌ترین راه برای بارگذاری تبلیغات آزمایشی، استفاده از شناسه واحد تبلیغاتی آزمایشی اختصاصی ما برای بنرها است که در هر پلتفرم دستگاه متفاوت است:

  • اندروید: ca-app-pub-3940256099942544/6300978111
  • iOS: ca-app-pub-3940256099942544/2934735716

این شناسه‌های واحد تبلیغاتی به‌طور ویژه پیکربندی شده‌اند تا برای هر درخواست، تبلیغات آزمایشی را برگردانند و شما می‌توانید هنگام کدنویسی، آزمایش و اشکال‌زدایی از آن‌ها در برنامه‌های خود استفاده کنید. فقط قبل از انتشار برنامه، مطمئن شوید که آن را با شناسه واحد تبلیغاتی خود جایگزین می‌کنید.

برای اطلاعات بیشتر در مورد نحوه عملکرد تبلیغات آزمایشی 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 به یک 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<firebase::gma::AdParent>(my_ad_parent);
     firebase::Future result =
       ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner);
  4. به عنوان جایگزینی برای حفظ آینده به عنوان یک متغیر، می‌توانید به صورت دوره‌ای وضعیت عملیات مقداردهی اولیه را با فراخوانی InitializeLastResult() در شیء AdView بررسی کنید. این می‌تواند برای پیگیری فرآیند مقداردهی اولیه در حلقه بازی سراسری شما مفید باشد.

      // 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 ، به بخش «استفاده از Futures برای نظارت بر وضعیت تکمیل فراخوانی‌های متد» مراجعه کنید.

موقعیت تبلیغ را تنظیم کنید

شما می‌توانید موقعیت 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++‎ مربوط به تبلیغات موبایلی گوگل، یک کلاس AdListener ارائه می‌دهد که می‌توانید آن را گسترش داده و به AdView::SetListener() ‎ ارسال کنید تا از تغییرات وضعیت نمای تبلیغ مطلع شوید.

توسعه متدها در AdListener اختیاری است، بنابراین شما فقط باید متدهایی را که می‌خواهید پیاده‌سازی کنید. در زیر نمونه‌ای از پیاده‌سازی یک کلاس که تمام متدهای کلاس 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);

جدول زیر اندازه‌های استاندارد بنر را نشان می‌دهد.

اندازه (به واحد نقطه) (عرض × ارتفاع) توضیحات در دسترس بودن ثابت اندازه تبلیغات فایربیس::gma::
۳۲۰x۵۰ بنر تلفن‌ها و تبلت‌ها kBanner
۳۲۰x۱۰۰ بنر بزرگ تلفن‌ها و تبلت‌ها kLargeBanner
۳۰۰x۲۵۰ مستطیل متوسط ​​IAB تلفن‌ها و تبلت‌ها kMediumRectangle
۴۶۸x۶۰ بنر تمام سایز IAB قرص‌ها kFullBanner
728x90 جدول امتیازات IAB قرص‌ها kLeaderboard
عرض ارائه شده x ارتفاع تطبیقی بنر تطبیقی تلفن‌ها و تبلت‌ها ناموجود

اندازه‌های سفارشی تبلیغات

برای تعریف اندازه بنر سفارشی، ابعاد مورد نظر خود را با استفاده از سازنده firebase::gma::AdSize با پارامترهای عرض و ارتفاع، همانطور که در اینجا نشان داده شده است، تنظیم کنید:

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

منابع اضافی

مثال در گیت‌هاب

داستان‌های موفقیت