میانجیگری


«واسطه‌گری AdMob» ویژگی‌ای است که به شما امکان می‌دهد از منابع متعدد، ازجمله «شبکه AdMob»، شبکه‌های آگهی طرف سوم، و پویش‌های AdMob، آگهی‌ها را در برنامه‌هایتان ارائه دهید. «واسطه‌گری AdMob» با ارسال درخواست‌های آگهی به چندین شبکه، به حداکثر رساندن نرخ تکمیل و افزایش درآمدزایی شما کمک می‌کند تا مطمئن شوید بهترین شبکه موجود را برای ارائه آگهی پیدا می‌کنید. مطالعه موردی.

پیش‌نیازها

قبل‌از اینکه بتوانید میانجی‌گری را برای قالب آگهی ادغام کنید، باید آن قالب آگهی را در برنامه‌تان ادغام کنید:

در میانجی‌گری تازه‌کار هستید؟ نمای کلی واسطه‌گری AdMob را بخوانید.

مقداردهی اولیه کیت توسعه نرم‌افزار آگهی‌های تلفن همراه

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

کد نمونه زیر نشان می‌دهد که چگونه می‌توانید وضعیت مقداردهی اولیه هر آداپتور را قبل‌از درخواست آگهی بررسی کنید.

// Initialize the Google Mobile Ads library
firebase::gma::Initialize(*app);

// In a game loop, monitor the initialization status
auto initialize_future = firebase::gma::InitializeLastResult();

if (initialize_future.status() == firebase::kFutureStatusComplete &&
    initialize_future.error() == firebase::gma::kAdErrorCodeNone) {
  // Initialization completed successfully, log the adapter status:
  std::map<std::string, firebase::gma::AdapterStatus> adapter_status_map =
      firebase::gma::GetInitializationStatus().GetAdapterStatusMap();

  for (auto it = adapter_status_map.begin(); it != adapter_status_map.end(); ++it) {
    std::string adapter_class_name = it->first;
    firebase::gma::AdapterStatus adapter_status = it->second;
    printf(“adapter: %s \t description: %s \t is_initialized: %d latency: %d\n”,
       adapter_class_name.c_str(),
       adapter_status.description().c_str(),
       adapter_status.is_initialized(),
       adpater_status.latency());
  }
} else {
  // Handle initialization error.
}

برای اطلاعات بیشتر درباره کار با Futures، به استفاده از Futures برای نظارت بر وضعیت تکمیل فراخوانی‌های روش مراجعه کنید.

بررسی مقدار adNetworkClassName

هر نتیجه آگهی حاوی اطلاعاتی درباره نام کلاس شبکه آگهی است که آگهی فعلی را واکشی کرده است.

در اینجا کد نمونه‌ای وجود دارد که نام کلاس شبکه آگهی را از AdResult برگشتی از AdView ثبت می‌کند. از کد مشابهی می‌توان برای آگهی‌های تمام‌صفحه و پاداش‌دار استفاده کرد:

firebase::Future<AdResult> load_ad_future = banner_view.loadAd(ad_request);

// In a game loop, monitor the ad load status
if (load_ad_future.status() == firebase::kFutureStatusComplete &&
    load_ad_future.error() == firebase::gma::kAdErrorCodeNone) {
  const AdResult* ad_result = load_ad_future.result();
  printf(“Loaded ad with adapter class name: %s\n”,
    ad_result->adapter_class_name().c_str());
} else {
  // Handle the load ad error.
}

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

مراحل بعدی

کیت توسعه نرم‌افزار Google Mobile Ads C++‎ پیاده‌سازی‌های کیت توسعه نرم‌افزار Android و iOS را برای میانجی‌گری دربرمی‌گیرد. بنابراین پیکربندی بیشتر، ازجمله نصب آداپتورهای میانجی، مختص پلاتفرم‌های Android و iOS است. برای اطلاعات بیشتر، به راهنمای انتخاب شبکه‌ها در کیت توسعه نرم‌افزار Android برای آگهی‌های Google Mobile و راهنمای انتخاب شبکه‌ها در کیت توسعه نرم‌افزار iOS برای آگهی‌های Google Mobile مراجعه کنید.