Google Mobile Ads Unity प्लगिन सेट अप करना

Google Mobile Ads Unity प्लगिन की मदद से, Unity डेवलपर Android और iOS ऐप्लिकेशन पर Google के मोबाइल विज्ञापन दिखा सकते हैं. इसके लिए, उन्हें Java या Objective-C कोड लिखने की ज़रूरत नहीं पड़ती. यह प्लगिन, विज्ञापनों के लिए अनुरोध करने के लिए C# इंटरफ़ेस उपलब्ध कराता है. इसका इस्तेमाल, आपके Unity प्रोजेक्ट में C# स्क्रिप्ट करती हैं.

यह गाइड उन पब्लिशर के लिए है जिन्हें Unity ऐप्लिकेशन से कमाई करनी है.

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

  • Unity Editor 2019.4 या इसके बाद के वर्शन का इस्तेमाल करें.
    • हमारा सुझाव है कि आप 2022.2 या इसके बाद का वर्शन इस्तेमाल करें.
  • iOS पर डिप्लॉय करने के लिए
    • Xcode 16.0 या इसके बाद का वर्शन
    • iOS 13.0 या इसके बाद के वर्शन को टारगेट करें
    • CocoaPods
  • Android पर डिप्लॉय करने के लिए
    • Android का एपीआई लेवल 24 या इसके बाद का वर्शन
    • Android एपीआई लेवल 35 या इसके बाद के वर्शन को टारगेट करना

Android एपीआई लेवल को प्रोजेक्ट सेटिंग > Player > Android > Other Settings > Other Settings में सेट किया जाता है.

Mobile Ads for Unity प्लगिन इंपोर्ट करना

OpenUPM-CLI

अगर आपके पास OpenUPM CLI इंस्टॉल है, तो इस कमांड का इस्तेमाल करके OpenUPM रजिस्ट्री इंस्टॉल की जा सकती है:

openupm add com.google.ads.mobile

.unitypackage प्लगिन ऐसेट हटाएं

अगर .unitypackage से OpenUPM पर माइग्रेट किया जा रहा है, तो आपको पुरानी जगह से ऐसेट को मैन्युअल तरीके से अनइंस्टॉल करना होगा. .unitypackage से इंपोर्ट की गई इन डायरेक्ट्री को हटाएं:

  • Assets/ExternalDependencyManager
  • Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

यूज़र इंटरफ़ेस (यूआई) के साथ OpenUPM

  1. पैकेज मैनेजर की सेटिंग खोलें. इसके लिए, Unity मेन्यू का विकल्प बदलाव करें > प्रोजेक्ट सेटिंग > पैकेज मैनेजर चुनें.
  2. पैकेज मैनेजर विंडो में, OpenUPM को ऐसी रजिस्ट्री के तौर पर जोड़ें जो उसके स्कोप में हो:

    Name: OpenUPM
    URL: https://package.openupm.com
    Scopes: com.google
    
  3. पैकेज मैनेजर मेन्यू खोलने के लिए, Unity मेन्यू का विकल्प Window > Package Manager चुनें.

  4. मैनेजर स्कोप ड्रॉप-डाउन को सेट करके, मेरी रजिस्ट्री चुनें.

  5. पैकेज की सूची से, Unity के लिए Google Mobile Ads पैकेज चुनें और इंस्टॉल करें दबाएं.

.unitypackage प्लगिन ऐसेट हटाएं

अगर .unitypackage से OpenUPM पर माइग्रेट किया जा रहा है, तो आपको पुरानी जगह से ऐसेट को मैन्युअल तरीके से अनइंस्टॉल करना होगा. .unitypackage से इंपोर्ट की गई इन डायरेक्ट्री को हटाएं:

  • Assets/ExternalDependencyManager
  • Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

OpenUPM

  1. सबसे हाल ही में रिलीज़ किए गए वर्शन का टैग फ़ेच करें. v प्रीफ़िक्स को छोड़कर, वापस किया गया टैग Google Mobile Ads Unity Plugin वर्शन है.

    • macOS और Linux

      curl -sS https://api.github.com/repos/googleads/googleads-mobile-unity/releases/latest | jq -r '.tag_name'
    • Windows PowerShell

      (Invoke-RestMethod -Uri "https://api.github.com/repos/googleads/googleads-mobile-unity/releases/latest").tag_name
      
  2. Packages/manifest.json फ़ाइल में बदलाव करें, ताकि OpenUPM स्कोप वाली रजिस्ट्री और डिपेंडेंसी को जोड़ा जा सके. इसके लिए, पिछले निर्देश से मिले वर्शन का इस्तेमाल करें:

    {
      "scopedRegistries": [
        {
          "name": "google",
          "url": "https://package.openupm.com",
          "scopes": [
            "com.google"
          ]
        }
      ],
      "dependencies": {
        "com.google.ads.mobile": "11.6.0"
      }
    }
    

.unitypackage प्लगिन ऐसेट हटाएं

अगर .unitypackage से OpenUPM पर माइग्रेट किया जा रहा है, तो आपको पुरानी जगह से ऐसेट को मैन्युअल तरीके से अनइंस्टॉल करना होगा. .unitypackage से इंपोर्ट की गई इन डायरेक्ट्री को हटाएं:

  • Assets/ExternalDependencyManager
  • Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

GitHub से इंपोर्ट करना

  1. GitHub से .unitypackage का वर्शन डाउनलोड करें.
  2. .unitypackage फ़ाइल को इंपोर्ट करने के लिए, Unity मेन्यू का विकल्प चुनें ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज और सभी आइटम इंपोर्ट करें.

ज़रूरी नहीं: External Dependency Manager को बंद करना

अगर Android और iOS लाइब्रेरी को अपने बिल्ड टूल से मैनेज किया जाता है, तो com.unity.external-dependency-manager पैकेज को बंद किया जा सकता है:

Unity Editor में, Window > Package Manager को चुनें और External Dependency Manager (com.unity.external-dependency-manager) पैकेज को हटाएं. इस पैकेज को हटाने से, Assets > Google Mobile Ads > Settings में जाकर, External Dependency Manager को चालू करें विकल्प से सही का निशान हट जाता है.

लेगसी एक्सटर्नल डिपेंडेंसी मैनेजर इंस्टॉल करना

अगर आपका प्रोजेक्ट Unity 2022.2 या इससे पहले के वर्शन का इस्तेमाल करता है, तो Unity के पैकेज को बंद करने के बाद, Google का लेगसी com.google.external-dependency-manager पैकेज इंस्टॉल किया जा सकता है:

  • External Dependency Manager for Unity के रिलीज़ पेज से, सबसे नई .unitypackage फ़ाइल डाउनलोड करें. इसके बाद, Assets > Import Package > Custom Package को चुनें.
  • यहां दिया गया OpenUPM CLI कमांड चलाएं:

    openupm add com.google.external-dependency-manager

नेटिव डिपेंडेंसी को मैन्युअल तरीके से कॉन्फ़िगर करना

अगर आपने External Dependency Manager पैकेज का इस्तेमाल नहीं किया है, तो अपनी बिल्ड फ़ाइलों में Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml और Assets/GoogleMobileAds/Editor/GoogleUmpDependencies.xml फ़ाइलों से ज़रूरी लाइब्रेरी जोड़ें:

  • Android के लिए, Edit > प्रोजेक्ट सेटिंग > Player > Android > Publishing Settings > Build को चुनें. इसके बाद, Custom Main Gradle Template को चालू करें. GoogleMobileAdsDependencies.xml और GoogleUmpDependencies.xml फ़ाइलों से ज़रूरी लाइब्रेरी को Assets/Plugins/Android/mainTemplate.gradle फ़ाइल में मौजूद dependencies ब्लॉक में जोड़ें:

    implementation 'com.google.android.gms:play-services-ads:25.5.0'
    implementation 'com.google.android.ump:user-messaging-platform:4.0.0'
    

    GoogleMobileAdsDependencies.xml फ़ाइल में मौजूद वर्शन का इस्तेमाल करके, androidx.constraintlayout:constraintlayout, androidx.lifecycle:lifecycle-process, और androidx.fragment:fragment पैकेज भी जोड़ें.

  • iOS के लिए, अपना Xcode प्रोजेक्ट एक्सपोर्ट करें. एक्सपोर्ट किए गए प्रोजेक्ट फ़ोल्डर में मौजूद Podfile फ़ाइल में, GoogleMobileAdsDependencies.xml और GoogleUmpDependencies.xml फ़ाइलों से ज़रूरी पॉड जोड़ें:

    pod 'Google-Mobile-Ads-SDK'
    pod 'GoogleUserMessagingPlatform'
    

    इसके बाद, एक्सपोर्ट किए गए iOS प्रोजेक्ट फ़ोल्डर में यह कमांड चलाएं:

    pod install --repo-update

अपना AdMob ऐप्लिकेशन आईडी सेट करना

Unity एडिटर में, मेन्यू से Assets > Google Mobile Ads > Settings चुनें.

हर फ़ील्ड में अपने Android और iOS AdMob ऐप्लिकेशन का आईडी डालें.

Google Mobile Ads Unity Plugin इन सेटिंग को Assets/GoogleMobileAds/Resources/GoogleMobileAdsSettings.asset कॉन्फ़िगरेशन फ़ाइल में टेक्स्ट के तौर पर सेव करता है.

एसडीके टूल को शुरू करना

विज्ञापन लोड करने से पहले, MobileAds.Initialize() को कॉल करके अपने ऐप्लिकेशन को Google Mobile Ads Unity Plugin शुरू करें. यह काम सिर्फ़ एक बार करना होता है. आम तौर पर, ऐप्लिकेशन लॉन्च करते समय.

MobileAds.Initialize() को कॉल करने का तरीका यहां बताया गया है:

MobileAds.Initialize((InitializationStatus initstatus) =>
{
    if (initstatus == null)
    {
        Debug.LogError("Google Mobile Ads initialization failed.");
        return;
    }

    Debug.Log("Google Mobile Ads initialization complete.");

    MobileAdsEventExecutor.ExecuteInUpdate(() =>
    {
        // Interact with UnityEngine objects on the main thread here.
    });
});

मुख्य थ्रेड पर Unity ऑब्जेक्ट के साथ इंटरैक्ट करना

Google Mobile Ads Unity Plugin, बैकग्राउंड थ्रेड पर विज्ञापन इवेंट को ट्रिगर करता है. अगर विज्ञापन कॉलबैक, UnityEngine जैसे Unity ऑब्जेक्ट के साथ इंटरैक्ट करते हैं, तो MobileAdsEventExecutor.ExecuteInUpdate तरीके का इस्तेमाल करके, Unity के मुख्य थ्रेड पर उस काम को साफ़ तौर पर शेड्यूल करें. लागू करने के बारे में ज़्यादा जानकारी के लिए, Unity के मुख्य थ्रेड पर विज्ञापन इवेंट ट्रिगर करना लेख पढ़ें.

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

Android या iOS प्लैटफ़ॉर्म पर डिप्लॉय करने पर, Google Mobile Ads Unity Plugin अब आपके Unity ऐप्लिकेशन में शामिल हो जाता है. अब विज्ञापन लागू किया जा सकता है. AdMob कई तरह के विज्ञापन फ़ॉर्मैट उपलब्ध कराता है. इनमें से, उपयोगकर्ताओं को सबसे बेहतर अनुभव देने वाला फ़ॉर्मैट चुना जा सकता है.

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

बैनर विज्ञापनों का इस्तेमाल करना

मध्यवर्ती

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

अचानक दिखने वाले (इंटरस्टीशियल) विज्ञापनों का इस्तेमाल करना

मूल भाषा वाला

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

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

इनाम दिया गया

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

इनाम वाले विज्ञापन दिखाना

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

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

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

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

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

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

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

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