Google Mobile Ads SDK (लेगसी) सेट अप करना

प्लैटफ़ॉर्म चुनें: Android iOS Unity Flutter Android (लेगसी)

किसी ऐप्लिकेशन में Google Mobile Ads SDK (Legacy) को इंटिग्रेट करना, विज्ञापन दिखाने और रेवेन्यू जनरेट करने की दिशा में पहला कदम है. एसडीके को इंटिग्रेट करने के बाद, विज्ञापन का कोई फ़ॉर्मैट (जैसे कि नेटिव या इनाम वाला वीडियो) चुना जा सकता है. इसके बाद, उसे लागू करने के लिए दिए गए निर्देशों का पालन करें.

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

अपने ऐप्लिकेशन को तैयार करने के लिए, यहां दिए गए सेक्शन में बताया गया तरीका अपनाएं.

ऐप्लिकेशन से जुड़ी ज़रूरी शर्तें

  • पक्का करें कि आपके ऐप्लिकेशन की बिल्ड फ़ाइल में इन वैल्यू का इस्तेमाल किया गया हो:

    • एसडीके का कम से कम वर्शन 24 या इसके बाद का वर्शन
    • SDK टूल के 35 या इसके बाद के वर्शन को कंपाइल करें

अपने AdMob खाते में ऐप्लिकेशन सेट अप करना

अपने ऐप्लिकेशन को AdMob के ज़रिए विज्ञापन दिखाने वाले ऐप्लिकेशन के तौर पर रजिस्टर करने के लिए, यह तरीका अपनाएं:

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

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

अपने ऐप्लिकेशन को कॉन्फ़िगर करना

  1. अपनी Gradle सेटिंग फ़ाइल में, Google की Maven रिपॉज़िटरी और Maven Central Repository को शामिल करें:

    Kotlin

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include(":app")

    ग्रूवी

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include ':app'
  2. अपने ऐप्लिकेशन-लेवल की बिल्ड फ़ाइल में, Google Mobile Ads SDK (Legacy) के लिए डिपेंडेंसी जोड़ें:

    Kotlin

    dependencies {
      implementation("com.google.android.gms:play-services-ads:25.5.0")
    }

    ग्रूवी

    dependencies {
      implementation 'com.google.android.gms:play-services-ads:25.5.0'
    }
  3. अभी सिंक करें पर क्लिक करें. सिंक करने के बारे में ज़्यादा जानने के लिए, प्रोजेक्ट को Gradle फ़ाइलों के साथ सिंक करना लेख पढ़ें.

  4. अपने ऐप्लिकेशन की AndroidManifest.xml फ़ाइल में, AdMob ऐप्लिकेशन आईडी जोड़ें. यह आईडी, AdMob के वेब इंटरफ़ेस में दिखता है. इसके लिए, <meta-data> टैग को android:name="com.google.android.gms.ads.APPLICATION_ID" के साथ जोड़ें. AdMob के वेब इंटरफ़ेस में, अपना ऐप्लिकेशन आईडी देखा जा सकता है. android:value के लिए, अपने 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="SAMPLE_APP_ID"/>
      </application>
    </manifest>
    

    SAMPLE_APP_ID को अपने AdMob ऐप्लिकेशन आईडी से बदलें. जांच करते समय, पिछले उदाहरण में दिखाया गया सैंपल ऐप्लिकेशन आईडी इस्तेमाल करें.

    यह भी ध्यान दें कि <meta-data> टैग को ठीक उसी तरह से न जोड़ने पर, जैसा दिखाया गया है, क्रैश हो जाता है. साथ ही, यह मैसेज दिखता है:

    Missing application ID.
    

    (ज़रूरी नहीं) Android 13 के साथ काम करने के लिए, पिछले वर्शन के लिए AD_ID अनुमति दें.

    अगर आपका ऐप्लिकेशन Google Mobile Ads SDK (Legacy) वर्शन 20.4.0 या इसके बाद के वर्शन का इस्तेमाल करता है, तो इस चरण को छोड़ा जा सकता है. ऐसा इसलिए, क्योंकि SDK टूल com.google.android.gms.permission.AD_ID अनुमति का एलान अपने-आप करता है. साथ ही, जब भी विज्ञापन आईडी उपलब्ध होता है, तब यह उसे ऐक्सेस कर पाता है.

    अगर आपके ऐप्लिकेशन में Google Mobile Ads SDK (Legacy) के 20.3.0 या इससे पहले के वर्शन का इस्तेमाल किया जा रहा है और वह Android 13 को टारगेट कर रहा है, तो आपको Google Mobile Ads SDK (Legacy) को विज्ञापन आईडी ऐक्सेस करने की अनुमति देने के लिए, AndroidManifest.xml फ़ाइल में com.google.android.gms.permission.AD_ID अनुमति जोड़नी होगी:

    <manifest>
     <application>
       <meta-data
           android:name="com.google.android.gms.ads.APPLICATION_ID"
           android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    
       <!-- For apps targeting Android 13 or higher & GMA SDK version 20.3.0 or lower -->
       <uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
    
     </application>
    </manifest>

    com.google.android.gms.permission.AD_ID की अनुमति के एलान के बारे में ज़्यादा जानने के लिए, Play Console का यह लेख पढ़ें. इसमें, अनुमति को बंद करने के तरीके के बारे में भी जानकारी दी गई है.

Google Mobile Ads SDK (Legacy) को शुरू करना

विज्ञापनों को लोड करने से पहले, Google Mobile Ads SDK (Legacy) को शुरू करें. इसके लिए, MobileAds.initialize() को कॉल करें.

यह तरीका, SDK टूल को शुरू करता है. साथ ही, Google Mobile Ads SDK (Legacy) और अडैप्टर, दोनों के शुरू होने के बाद या 30 सेकंड के टाइम आउट के बाद, पूरा होने पर काम आने वाले लिसनर को कॉल करता है. इसे सिर्फ़ एक बार करना होता है. सबसे सही समय, ऐप्लिकेशन लॉन्च करने के दौरान होता है.

अगर AdMob मीडिएशन का इस्तेमाल किया जा रहा है, तो विज्ञापन लोड करने से पहले, कंप्लीशन हैंडलर के कॉल होने का इंतज़ार करें. इससे यह पक्का होता है कि सभी मीडिएशन अडैप्टर शुरू हो गए हैं.

शुरू होने पर, Google Mobile Ads SDK (Legacy) या मीडिएशन पार्टनर के SDK, विज्ञापनों को पहले से लोड कर सकते हैं. अगर आपको यूरोपियन इकनॉमिक एरिया (ईईए), यूनाइटेड किंगडम (यूके) या स्विट्ज़रलैंड के उपयोगकर्ताओं से सहमति लेनी है, तो अनुरोध के हिसाब से कोई भी फ़्लैग सेट करें. जैसे, setTagForChildDirectedTreatment() या setTagForUnderAgeOfConsent(), या विज्ञापन लोड करने से पहले कोई अन्य कार्रवाई करें. यह पक्का करें कि आपने Google Mobile Ads SDK (Legacy) को शुरू करने से पहले ऐसा किया हो.

यहां किसी गतिविधि में बैकग्राउंड थ्रेड पर initialize() तरीके को कॉल करने का एक उदाहरण दिया गया है:

Java

new Thread(
        () -> {
          // Initialize the Google Mobile Ads SDK on a background thread.
          MobileAds.initialize(this, initializationStatus -> {});
        })
    .start();

Kotlin

CoroutineScope(Dispatchers.IO).launch {
  // Initialize the Google Mobile Ads SDK on a background thread.
  MobileAds.initialize(this@MainActivity) {}
}

कोई विज्ञापन फ़ॉर्मैट चुनें

Google Mobile Ads SDK (Legacy) अब इंपोर्ट हो गया है और विज्ञापन लागू करने के लिए तैयार है. AdMob कई तरह के विज्ञापन फ़ॉर्मैट उपलब्ध कराता है. इसलिए, आपके पास ऐसा फ़ॉर्मैट चुनने का विकल्प होता है जो आपके ऐप्लिकेशन के उपयोगकर्ता अनुभव के हिसाब से सबसे सही हो.

बैनर विज्ञापन यूनिट, रेक्टैंगल के आकार वाले विज्ञापन दिखाती हैं. ये विज्ञापन, ऐप्लिकेशन के लेआउट का कुछ हिस्सा घेरते हैं. ये कुछ समय बाद अपने-आप रीफ़्रेश हो सकते हैं. इसका मतलब है कि उपयोगकर्ताओं को समय-समय पर एक नया विज्ञापन दिखेगा, भले ही वे आपके ऐप्लिकेशन में एक ही स्क्रीन का इस्तेमाल करें. साथ ही, ये सबसे आसानी से लागू किए जा सकने वाले विज्ञापन फ़ॉर्मैट भी हैं.

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

मध्यवर्ती

पेज पर अचानक दिखने वाली विज्ञापन यूनिट, आपके ऐप्लिकेशन में पूरे पेज को कवर करने वाले विज्ञापन दिखाती हैं. इन्हें अपने ऐप्लिकेशन के इंटरफ़ेस में इस तरह सेट करें कि वे तय समय और ट्रांज़िशन के दौरान दिखें, जैसे कि किसी गेमिंग ऐप्लिकेशन में लेवल पूरा होने के बाद.

इंटरस्टीशियल विज्ञापन लागू करना

मूल भाषा वाला

नेटिव विज्ञापन ऐसे विज्ञापन होते हैं जिनमें हेडलाइन और कॉल-टू-ऐक्शन जैसी ऐसेट को अपने ऐप्लिकेशन में दिखाने के तरीके को पसंद के मुताबिक बनाया जा सकता है. विज्ञापन को खुद स्टाइल करके, सहज और बिना रुकावट वाला विज्ञापन प्रज़ेंटेशन बनाया जा सकता है. इससे उपयोगकर्ता को बेहतर अनुभव मिलता है.

नेटिव विज्ञापन लागू करना

इनाम दिया गया

इनाम वाली विज्ञापन यूनिट की मदद से, उपयोगकर्ता गेम खेल सकते हैं या सर्वे में हिस्सा ले सकते हैं. इसके अलावा, वे क्वाइन, एक्स्ट्रा लाइफ़ या पॉइंट जैसे इन-ऐप्लिकेशन इनाम पाने के लिए वीडियो भी देख सकते हैं. अलग-अलग विज्ञापन यूनिट के लिए, अलग-अलग इनाम सेट किए जा सकते हैं. साथ ही, उपयोगकर्ताओं को मिलने वाले इनाम की वैल्यू और आइटम भी तय किए जा सकते हैं.

इनाम वाले विज्ञापन लागू करना

इनाम वाला इंटरस्टीशियल विज्ञापन

इनाम वाला इंटरस्टीशियल, ऐसा विज्ञापन फ़ॉर्मैट है जिसके ज़रिए उपयोगकर्ताओं को किसी तरह का फ़ायदा दिया जा सकता है. इसकी मदद से, ऐप्लिकेशन में नैचुरल ट्रांज़िशन के दौरान दिखने वाले विज्ञापनों के लिए, कॉइन या खेलने के कुछ और मौके जैसे इनाम दिए जाते हैं.

उपयोगकर्ताओं को इनाम वाले इंटरस्टीशियल विज्ञापन देखने के लिए, ऑप्ट-इन करना ज़रूरी नहीं होता. इनाम वाले विज्ञापनों के लिए ऐसा करना ज़रूरी है.

इनाम वाले विज्ञापनों में ऑप्ट-इन प्रॉम्प्ट के बजाय, इनाम वाले इंटरस्टीशियल विज्ञापनों की जानकारी देने वाली एक ऐसी स्क्रीन होती है जिस पर इनाम से जुड़ी सूचना दिखती है. अगर उपयोगकर्ता चाहें, तो स्क्रीन पर मौजूद विकल्प की मदद से ऑप्ट-आउट कर सकते हैं.

इनाम वाले इंटरस्टीशियल विज्ञापन लागू करना

ऐप्लिकेशन खोलने पर दिखने वाला विज्ञापन

ऐप्लिकेशन खोलने पर दिखने वाला विज्ञापन, एक ऐसा विज्ञापन फ़ॉर्मैट है जो तब दिखता है, जब उपयोगकर्ता आपके ऐप्लिकेशन को खोलते हैं या उस पर वापस आते हैं. यह विज्ञापन, लोड हो रही स्क्रीन को ओवरले करता है.

ऐप्लिकेशन खोलने पर दिखने वाले विज्ञापन लागू करना

अन्य संसाधन

GitHub पर मौजूद Google Mobile Ads रिपॉज़िटरी में, यह बताया गया है कि इस API के ज़रिए उपलब्ध कराए जाने वाले अलग-अलग विज्ञापन फ़ॉर्मैट का इस्तेमाल कैसे किया जाता है.