توسط AdMob هو ميزة تتيح لك عرض الإعلانات على تطبيقاتك من مصادر متعددة، بما في ذلك شبكة AdMob وشبكات إعلانات خارجية وحملات AdMob. تساعد ميزة "توسط AdMob" في زيادة معدل التعبئة إلى أقصى حد وزيادة معدل تحقيق الربح من خلال إرسال طلبات عرض الإعلانات إلى شبكات متعددة لضمان عثورك على أفضل شبكة متاحة. دراسة حالة
المتطلبات الأساسية
قبل أن تتمكّن من دمج ميزة التوسّط لشكل إعلان معيّن، عليك دمج شكل الإعلان هذا في تطبيقك:
هل أنت مستخدم جديد لميزة التوسّط؟ اطّلِع على نظرة عامة حول "توسط AdMob".
إعداد حزمة "SDK لإعلانات Google على الأجهزة الجوّالة"
يوضّح لك دليل البدء السريع كيفية إعداد حزمة تطوير البرامج (SDK) لعرض الإعلانات على الأجهزة الجوّالة. أثناء طلب الإعداد هذا، يتم أيضًا إعداد محوّلات التوسّط. من المهم الانتظار حتى تكتمل عملية الإعداد قبل تحميل الإعلانات لضمان المشاركة الكاملة من كل شبكة إعلانات في طلب عرض الإعلان الأول.
يوضّح الرمز النموذجي أدناه كيفية التحقّق من حالة إعداد كل محوّل قبل تقديم طلب عرض الإعلان.
// 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 يؤدي أيضًا إلى إعادة التحميل استنادًا إلى معدّل إعادة تحميل الوحدة الإعلانية لإعلان البانر.
الخطوات التالية
تتضمّن حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" الخاصة بتطبيقات C++ عمليات تنفيذ حزمتَي SDK لتطبيقات Android وiOS من أجل التوسّط. لذلك، فإنّ الإعدادات الإضافية، بما في ذلك تثبيت محوّلات التوسّط، تكون خاصة بنظامَي التشغيل Android وiOS. لمزيد من المعلومات، يُرجى الاطّلاع على دليل اختيار الشبكات في حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة لنظام التشغيل Android ودليل اختيار الشبكات في حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة لنظام التشغيل iOS.