मध्‍यस्‍थता


AdMob मीडिएशन (अलग-अलग नेटवर्क से विज्ञापन दिखाना) की सुविधा की मदद से, अपने ऐप्लिकेशन पर कई सोर्स से विज्ञापन दिखाए जा सकते हैं. इनमें AdMob नेटवर्क, तीसरे पक्ष की विज्ञापन नेटवर्क कंपनियां, और AdMob कैंपेन शामिल हैं. AdMob मीडिएशन की मदद से, कई नेटवर्क को विज्ञापन अनुरोध भेजे जाते हैं. इससे, आपके विज्ञापन दिखाने की दर (फ़िल दर) बढ़ती है और कमाई करने की सुविधा भी बेहतर होती है. इससे, आपको विज्ञापन दिखाने के लिए सबसे अच्छा नेटवर्क मिलता है. केस स्टडी.

ज़रूरी शर्तें

किसी विज्ञापन फ़ॉर्मैट के लिए मीडिएशन को इंटिग्रेट करने से पहले, आपको उस विज्ञापन फ़ॉर्मैट को अपने ऐप्लिकेशन में इंटिग्रेट करना होगा:

क्या आपने पहले कभी मीडिएशन का इस्तेमाल नहीं किया है? AdMob मीडिएशन के बारे में खास जानकारी पढ़ें.

Mobile Ads SDK को शुरू करना

तुरंत शुरू करने की गाइड में, Mobile Ads 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.
}

फ़्यूचर के साथ काम करने के बारे में ज़्यादा जानकारी के लिए, फ़ंक्शन कॉल के पूरा होने की स्थिति को मॉनिटर करने के लिए, फ़्यूचर का इस्तेमाल करना लेख पढ़ें.

adNetworkClassName की वैल्यू देखें

हर विज्ञापन नतीजे में, उस विज्ञापन नेटवर्क की क्लास के नाम की जानकारी होती है जिसने मौजूदा विज्ञापन को फ़ेच किया है.

यहां एक सैंपल कोड दिया गया है, जो AdView से दिखाए गए AdResult से विज्ञापन नेटवर्क क्लास का नाम लॉग करता है. इंटरस्टीशियल और इनाम वाले विज्ञापनों के लिए, मिलते-जुलते कोड का इस्तेमाल किया जा सकता है:

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++ SDK, मीडिएशन के लिए Android और iOS SDK टूल को रैप करता है. इसलिए, मीडिएशन अडैप्टर के इंस्टॉलेशन के साथ-साथ, आगे का कॉन्फ़िगरेशन, Android और iOS प्लैटफ़ॉर्म के हिसाब से होता है. ज़्यादा जानकारी के लिए, Google Mobile Ads Android SDK नेटवर्क चुनने के लिए गाइड और Google Mobile Ads iOS SDK नेटवर्क चुनने के लिए गाइड देखें.