Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

अपने C++ प्रोजेक्ट में AdMob के साथ शुरुआत करें

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

यह क्विकस्टार्ट गाइड उन प्रकाशकों और डेवलपर्स के लिए है जो AdMob का उपयोग करके किसी ऐसे ऐप से कमाई करना चाहते हैं जो Firebase के साथ बनाया गया है।

यदि आपने अभी तक नहीं किया है, तो AdMob, Firebase और Google Analytics का एक साथ उपयोग करने के सभी लाभों के बारे में जानें।

यदि आप पहली बार इस मार्गदर्शिका को पढ़ रहे हैं, तो हम अनुशंसा करते हैं कि आप Google मोबाइल विज्ञापन C++ SDK परीक्षण ऐप का उपयोग करके डाउनलोड करें और उसका पालन करें।

शुरू करने से पहले

  • अगर आपके पास पहले से कोई Firebase प्रोजेक्ट और कोई Firebase ऐप्लिकेशन नहीं है, तो Firebase आरंभ करने की मार्गदर्शिका का पालन करें: अपने C++ प्रोजेक्ट में Firebase जोड़ें .

  • सुनिश्चित करें कि आपके Firebase प्रोजेक्ट में Google Analytics सक्षम है:

    • यदि आप एक नया Firebase प्रोजेक्ट बना रहे हैं, तो प्रोजेक्ट निर्माण कार्यप्रवाह के दौरान Google Analytics को सक्षम करें।

    • यदि आपके पास कोई मौजूदा Firebase प्रोजेक्ट है जिसमें Google Analytics सक्षम नहीं है, तो आप Google Analytics को अपनी > प्रोजेक्ट सेटिंग के एकीकरण टैब से सक्षम कर सकते हैं।

चरण 1: अपना ऐप अपने AdMob खाते में सेट करें

  1. अपने ऐप के प्रत्येक प्लेटफ़ॉर्म प्रकार को AdMob ऐप के रूप में पंजीकृत करें।

    1. AdMob खाते में साइन इन या साइन अप करें

    2. AdMob के साथ अपने ऐप्लिकेशन के प्रत्येक प्लेटफ़ॉर्म संस्करण को पंजीकृत करें । यह चरण एक अद्वितीय AdMob ऐप आईडी के साथ एक AdMob ऐप बनाता है जिसकी आपको बाद में इस मार्गदर्शिका में आवश्यकता होगी।

    आपको अपने ऐप में मोबाइल विज्ञापन एसडीके जोड़ने के लिए कहा जाएगा। इस गाइड में बाद में इस कार्य के लिए विस्तृत निर्देश प्राप्त करें।

  2. अपने प्रत्येक AdMob ऐप को संबंधित Firebase ऐप से लिंक करें।

    यह कदम वैकल्पिक है लेकिन दृढ़ता से अनुशंसित है। उपयोगकर्ता मेट्रिक चालू करने और अपने AdMob ऐप्लिकेशन को Firebase से लिंक करने के फ़ायदों के बारे में ज़्यादा जानें.

    प्रत्येक प्लेटफ़ॉर्म प्रकार के लिए, अपने AdMob खाते के ऐप्स डैशबोर्ड में निम्नलिखित दो चरणों को पूरा करें:

    1. AdMob को आपके AdMob खाते में क्यूरेटेड एनालिटिक्स डेटा को संसाधित और प्रदर्शित करने की अनुमति देने के लिए उपयोगकर्ता मीट्रिक सक्षम करें । आपके लिए अपने AdMob ऐप्लिकेशन को Firebase से लिंक करना भी एक आवश्यक सेटिंग है.

    2. अपने AdMob ऐप्लिकेशन को अपने मौजूदा Firebase प्रोजेक्ट और संबंधित Firebase ऐप्लिकेशन से लिंक करें .

      पक्का करें कि आपने वही पैकेज नाम (Android) या बंडल आईडी (iOS) डाला है जो आपने अपने Firebase ऐप्लिकेशन के लिए डाला था. अपनी > प्रोजेक्ट सेटिंग के अपने ऐप्स कार्ड में अपने Firebase ऐप्लिकेशन का पैकेज नाम या बंडल आईडी ढूंढें.

चरण 2: अपने ऐप में अपना AdMob ऐप आईडी जोड़ें

एंड्रॉयड

नीचे दिखाए गए अनुसार <meta-data> टैग जोड़कर अपने ऐप की AndroidManifest.xml फ़ाइल में अपना AdMob ऐप आईडी जोड़ें।

<manifest>
    <application>
        <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ADMOB_APP_ID"/>
    </application>
</manifest>

आईओएस

अपने ऐप की Info.plist फ़ाइल में, अपने AdMob ऐप आईडी के स्ट्रिंग मान के साथ एक GADApplicationIdentifier कुंजी जोड़ें।

आप इस परिवर्तन को प्रोग्रामेटिक रूप से कर सकते हैं:

<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~1458002511 -->
<key>GADApplicationIdentifier</key>
<string>ADMOB_APP_ID</string>

या, इसे संपत्ति सूची संपादक में संपादित करें:

संपत्ति सूची संपादक

चरण 3: Google मोबाइल विज्ञापन SDK जोड़ें

चूंकि Google मोबाइल विज्ञापन C++ SDK firebase::gma नाम स्थान में रहता है, इसलिए Firebase C++ SDK डाउनलोड करें, और फिर इसे अपनी पसंद की निर्देशिका में अनज़िप करें।

Firebase C++ SDK प्लेटफ़ॉर्म-विशिष्ट नहीं है, लेकिन इसके लिए प्लेटफ़ॉर्म-विशिष्ट लाइब्रेरी कॉन्फ़िगरेशन की आवश्यकता होती है।

एंड्रॉयड

  1. अपने प्रोजेक्ट की gradle.properties फ़ाइल में, अनज़िप किए गए SDK का स्थान निर्दिष्ट करें:

    systemProp.firebase_cpp_sdk.dir=FULL/PATH/TO/SDK
  2. अपने प्रोजेक्ट की settings.gradle फ़ाइल में, निम्न सामग्री जोड़ें:

    def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir')
    
    gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir"
    includeBuild "$firebase_cpp_sdk_dir"
  3. अपने मॉड्यूल (ऐप्लिकेशन-स्तर) ग्रेड फ़ाइल (आमतौर पर app/build.gradle ) में निम्न सामग्री जोड़ें, जिसमें Google मोबाइल विज्ञापन C++ SDK के लिए लाइब्रेरी निर्भरता शामिल है।

    android.defaultConfig.externalNativeBuild.cmake {
      arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir"
    }
    
    # Add the dependency for the Google Mobile Ads C++ SDK
    apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle"
    firebaseCpp.dependencies {
      gma
    }
  4. अपने प्रोजेक्ट की CMakeLists.txt फ़ाइल में, निम्न सामग्री जोड़ें।

    # Add Firebase libraries to the target using the function from the SDK.
    add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
    
    # Add the Google Mobile Ads C++ SDK.
    
    # The Firebase C++ library `firebase_app` is required,
    # and it must always be listed last.
    
    set(firebase_libs
      firebase_gma
      firebase_app
    )
    
    target_link_libraries(${target_name} "${firebase_libs}")
  5. यह सुनिश्चित करने के लिए अपने ऐप को सिंक करें कि सभी निर्भरताओं के आवश्यक संस्करण हैं।

तुम सभी पक्के हो! आपका C++ ऐप Google मोबाइल विज्ञापन C++ SDK का उपयोग करने के लिए कॉन्फ़िगर किया गया है।

आईओएस

इस अनुभाग के चरण इस बात का उदाहरण हैं कि अपने iOS प्रोजेक्ट में Google मोबाइल विज्ञापन C++ SDK कैसे जोड़ें।

  1. CocoaPods संस्करण 1 या बाद का संस्करण चलाकर प्राप्त करें:

    sudo gem install cocoapods --pre
  2. अनज़िप किए गए SDK से Google मोबाइल विज्ञापन पॉड जोड़ें।

    1. यदि आपके पास पहले से पॉडफाइल नहीं है तो एक पॉडफाइल बनाएं:

      cd YOUR_APP_DIRECTORY
      pod init
    2. अपने पॉडफ़ाइल में, Google मोबाइल विज्ञापन C++ SDK के लिए पॉड जोड़ें:

      pod 'Google-Mobile-Ads-SDK'
    3. पॉड स्थापित करें, फिर Xcode में .xcworkspace फ़ाइल खोलें।

      pod install
      open YOUR_APP.xcworkspace
    4. Firebase C++ SDK से प्रोजेक्ट में निम्न फ़्रेमवर्क जोड़ें:

      • xcframeworks/firebase.xcframework
      • xcframeworks/firebase_gma.xcframework

तुम सभी पक्के हो! आपका C++ ऐप Google मोबाइल विज्ञापन C++ SDK का उपयोग करने के लिए कॉन्फ़िगर किया गया है।

चरण 4: Google मोबाइल विज्ञापन SDK प्रारंभ करें

विज्ञापन लोड करने से पहले, firebase::gma::Initialize() पर कॉल करके मोबाइल विज्ञापन SDK प्रारंभ करें।

यह कॉल एक firebase::Future देता है जो एक बार इनिशियलाइज़ेशन खत्म होने के बाद (या 30-सेकंड टाइमआउट के बाद) पूरा हो जाता है। इस विधि को केवल एक बार और जितनी जल्दी हो सके कॉल करें, आदर्श रूप से ऐप लॉन्च के समय।

Initialize() को कॉल करने का एक उदाहरण यहां दिया गया है:

एंड्रॉयड

// Initialize the Google Mobile Ads library
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
  firebase::gma::Initialize(jni_env, j_activity, &result);

if (result != kInitResultSuccess) {
  // Initialization immediately failed, most likely due to a missing dependency.
  // Check the device logs for more information.
  return;
}

// Monitor the status of the future.
// See "Use a Future to monitor the completion status of a method call" below.
if (future.status() == firebase::kFutureStatusComplete &&
    future.error() == firebase::gma::kAdErrorCodeNone) {
  // Initialization completed.
} else {
  // Initialization on-going, or an error has occurred.
}

आईओएस

// Initialize the Google Mobile Ads library.
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
  firebase::gma::Initialize(&result);

if (result != kInitResultSuccess) {
  // Initialization immediately failed, most likely due to a missing dependency.
  // Check the device logs for more information.
  return;
}

// Monitor the status of the future.
// See "Use a Future to monitor the completion status of a method call" below.
if (future.status() == firebase::kFutureStatusComplete &&
    future.error() == firebase::gma::kAdErrorCodeNone) {
  // Initialization completed.
} else {
  // Initialization on-going, or an error has occurred.
}

विधि कॉल की पूर्णता स्थिति की निगरानी के लिए Future का उपयोग करें

Future आपको अपनी एसिंक्रोनस विधि कॉल की पूर्णता स्थिति निर्धारित करने का एक तरीका प्रदान करता है।

उदाहरण के लिए, जब आपका ऐप firebase::gma::Initialize() कॉल करता है, तो एक नया firebase::Future बनाया और लौटाया जाता है। आरंभीकरण पूरा होने पर यह निर्धारित करने के लिए आपका ऐप Future की status() को मतदान कर सकता है। एक बार पूरा हो जाने पर, आपका ऐप परिणामी AdapterInitializationStatus प्राप्त करने के लिए result() का आह्वान कर सकता है।

Future को वापस करने वाली विधियों में एक समान "अंतिम परिणाम" विधि होती है जिसका उपयोग ऐप्स किसी दिए गए क्रिया के लिए सबसे हाल के Future को पुनः प्राप्त करने के लिए कर सकते हैं। उदाहरण के लिए, firebase::gma::Initialize() में एक समान विधि है जिसे firebase::gma::InitializeLastResult() कहा जाता है, जो एक Future देता है जिसका उपयोग आपका ऐप firebase::gma::Initialize()

यदि Future की स्थिति पूर्ण है और उसका त्रुटि कोड firebase::gma::kAdErrorCodeNone है, तो ऑपरेशन सफलतापूर्वक पूरा हो गया है।

Future पूरा होने पर आप कॉलबैक को भी पंजीकृत कर सकते हैं। कुछ मामलों में, कॉलबैक एक अलग थ्रेड में चल रहा होगा, इसलिए सुनिश्चित करें कि आपका कोड थ्रेड-सुरक्षित है। यह कोड स्निपेट कॉलबैक के लिए फ़ंक्शन पॉइंटर का उपयोग करता है:

// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
  /*user_data=*/nullptr);

// The OnCompletion callback function.
static void OnCompletionCallback(
  const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
  // Called when the Future is completed for the last call to firebase::gma::Initialize().
  // If the error code is firebase::gma::kAdErrorCodeNone,
  // then the SDK has been successfully initialized.
  if (future.error() == firebase::gma::kAdErrorCodeNone) {
    // success!
  } else {
    // failure.
  }
}

चरण 5: अपने ऐप में लागू करने के लिए एक विज्ञापन प्रारूप चुनें

AdMob कई अलग-अलग विज्ञापन प्रारूप प्रदान करता है, इसलिए आप वह प्रारूप चुन सकते हैं जो आपके ऐप के उपयोगकर्ता अनुभव के लिए सबसे उपयुक्त हो। AdMob दस्तावेज़ में विस्तृत कार्यान्वयन निर्देश देखने के लिए विज्ञापन प्रारूप के लिए एक बटन पर क्लिक करें।

डिवाइस स्क्रीन के ऊपर या नीचे दिखाई देने वाले आयताकार विज्ञापन

जब उपयोगकर्ता ऐप के साथ इंटरैक्ट कर रहे हों तो बैनर विज्ञापन स्क्रीन पर बने रहते हैं, और एक निश्चित अवधि के बाद स्वचालित रूप से रीफ्रेश हो सकते हैं। यदि आप मोबाइल विज्ञापन के लिए नए हैं, तो वे शुरू करने के लिए एक बेहतरीन जगह हैं।

बैनर विज्ञापन लागू करें

मध्य

फ़ुल-स्क्रीन विज्ञापन जो उपयोगकर्ता द्वारा बंद किए जाने तक ऐप के इंटरफ़ेस को कवर करते हैं

किसी ऐप के निष्पादन के प्रवाह में स्वाभाविक विराम पर मध्यवर्ती विज्ञापनों का सबसे अच्छा उपयोग किया जाता है, जैसे कि किसी गेम के स्तरों के बीच या किसी कार्य के पूरा होने के बाद।

मध्यवर्ती विज्ञापन लागू करें

पुरस्कृत

ऐसे विज्ञापन जो उपयोगकर्ताओं को लघु वीडियो देखने और चलने योग्य विज्ञापनों और सर्वेक्षणों के साथ सहभागिता करने के लिए पुरस्कृत करते हैं

पुरस्कृत (या "इनाम-आधारित") विज्ञापन फ्री-टू-प्ले उपयोगकर्ताओं से कमाई करने में मदद कर सकते हैं।

पुरस्कृत विज्ञापन लागू करें

रुचि के अन्य विषय

उपयोगकर्ता मीट्रिक और विश्लेषण डेटा देखें

इसके आरंभ होने के बाद, मोबाइल विज्ञापन एसडीके स्वचालित रूप से आपके ऐप से एनेलिटिक्स इवेंट और उपयोगकर्ता गुणों को लॉग करना शुरू कर देता है। आप इस डेटा को अपने ऐप में कोई अतिरिक्त कोड जोड़े बिना या कोई विज्ञापन लागू किए बिना देख सकते हैं। यहां आप यह विश्लेषण डेटा देख सकते हैं:

ध्यान दें कि एआरपीयू और एआरपीपीयू मेट्रिक्स को बेहतर ढंग से प्रस्तुत करने के लिए, हो सकता है कि आप इन मीट्रिक्स के लिए आय गणना में ecommerce_purchase नामक एनालिटिक्स कस्टम इवेंट का डेटा शामिल करना चाहें ( जानें कि कैसे )।

(वैकल्पिक) Google Analytics और Firebase की अधिक सुविधाओं का उपयोग करें

ऐप मुद्रीकरण और उपयोगकर्ता जुड़ाव को बेहतर बनाने के लिए अधिक अवसरों और सुविधाओं का लाभ उठाएं:

  • Google Analytics के लिए Firebase SDK जोड़ें और उसका उपयोग करें

  • अपने ऐप्लिकेशन में अन्य Firebase उत्पादों का उपयोग करें

    Google Analytics के लिए Firebase SDK जोड़ने के बाद, अपने ऐप्लिकेशन में विज्ञापनों को अनुकूलित करने के लिए अन्य Firebase उत्पादों का उपयोग करें।

    • रिमोट कॉन्फिग आपको असीमित दैनिक सक्रिय उपयोगकर्ताओं के लिए बिना किसी कीमत के, ऐप अपडेट प्रकाशित किए बिना अपने ऐप के व्यवहार और उपस्थिति को बदलने में सक्षम बनाता है।

    • A/B परीक्षण आपको अपने ऐप्लिकेशन के UI, सुविधाओं, या सहभागिता अभियानों में परिवर्तनों का परीक्षण करने की शक्ति देता है ताकि यह पता लगाया जा सके कि क्या वे परिवर्तनों को व्यापक रूप से लागू करने से पहले आपकी प्रमुख मीट्रिक (जैसे आय और प्रतिधारण) पर प्रभाव डालते हैं।

आरंभ करने के लिए, AdMob ऐप्स के साथ Google Analytics और Firebase का उपयोग करने के लिए मार्गदर्शिका पर जाएं।