विज्ञापन स्‍थापना

इस गाइड में, Google मोबाइल विज्ञापन Unity प्लगिन के विज्ञापन को इस्तेमाल करने का तरीका बताया गया है आपके ऐप्लिकेशन के लिए विज्ञापन बनाने और दिखाने के लिए प्लेसमेंट सुविधा.

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

Google Mobile Ads SDK शुरू करें

विज्ञापन लोड करने से पहले, इस नंबर पर कॉल करके Mobile Ads SDK शुरू करें MobileAds.Initialize(), Action<InitializationStatus> कॉलबैक के साथ. यह इसे सिर्फ़ एक बार करना पड़ता है. आम तौर पर, ऐप्लिकेशन लॉन्च करते समय ऐसा करना बेहतर होता है.

using GoogleMobileAds.Api;
using System.Collections.Generic;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    ...
    public void Start()
    {
        // Initialize the Mobile Ads SDK.
        MobileAds.Initialize((initStatus) =>
        {
            // SDK initialization is complete
        });
        ...
    }
}

विज्ञापन प्लेसमेंट बनाना

Google Mobile Ads के साथ बैनर दिखाने के लिए पहला कदम है विज्ञापन प्लेसमेंट कॉन्फ़िगर करना होगा. आपके पास बैनर का विज्ञापन प्लेसमेंट चुनने का विकल्प होता है. ऐसेट > का इंटरस्टीशियल या इनाम वाला फ़ॉर्मैट Google मोबाइल विज्ञापन > विज्ञापन Unity एडिटर में प्लेसमेंट. इसके बाद, तीन डेमो विज्ञापन प्लेसमेंट सेट करें और इस्तेमाल के लिए तैयार है.

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

विज्ञापन प्लेसमेंट कॉन्फ़िगरेशन

हर प्लेसमेंट में ये प्रॉपर्टी होती हैं:

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

नीचे दिया गया स्क्रीनशॉट मेरा बेहतरीन बैनर.

सीन में AdGameObject जोड़ना

आप अपने GameObject > का इस्तेमाल करके > Unity Editor में Google मोबाइल विज्ञापन दिखाता है. चुनें: फ़ॉर्मैट का इस्तेमाल करें.

सीन में AdGameObject जोड़ने के बाद, आपको एक GameObject जो यूनिटी एडिटर के हैरारकी व्यू में विज्ञापन दिखाता है.

GameObject का नाम बदलकर प्लेसमेंट का नाम बदला जा सकता है वह भी ऐसा कर सकता है. नीचे दिया गया स्क्रीनशॉट, AdGameObject का एक उदाहरण दिखाता है इसका नाम बैनर विज्ञापन होगा.

AdGameObject सेटिंग

इंस्पेक्टर की मदद से, अपने सीन में AdGameObject को कॉन्फ़िगर किया जा सकता है विज्ञापन गेम ऑब्जेक्ट (स्क्रिप्ट) कॉम्पोनेंट की सेटिंग में देखें.

विज्ञापन प्लेसमेंट

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

BannerAdGameObject कॉन्फ़िगरेशन (सिर्फ़ बैनर के लिए)

  • साइज़ - बैनर का वह साइज़ चुनें जिसका इस्तेमाल करना है.
    • ऐंकर किए गए अडैप्टिव बैनर के ज़रिए कुछ और विकल्प मिलते हैं:
      • ओरिएंटेशन - विज्ञापन का हिसाब लगाने के लिए इस्तेमाल किए गए डिवाइस ओरिएंटेशन को चुनें ऊंचाई.
      • फ़ुल स्क्रीन की चौड़ाई का इस्तेमाल करें - सही का निशान लगाने पर, बैनर जगह ले लेगा फ़ुल स्क्रीन की चौड़ाई. स्क्रीन की चौड़ाई का प्रतिशत (50~99%) बदला जा सकता है, अगर फ़ुल स्क्रीन की चौड़ाई का इस्तेमाल करें विकल्प से सही का निशान हटाएं.
    • पसंद के मुताबिक, बैनर की चौड़ाई और ऊंचाई सेट करने की सुविधा मिलती है.
  • विज्ञापन का क्रम - वह जगह चुनें जहां बैनर को रखना है.

कॉलबैक

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

  1. विज्ञापन कॉलबैक के साथ काम करने वाला एक फ़ंक्शन बनाएं.

    public void OnBannerAdFailedToLoad(string reason) {
        Debug.Log("Banner ad failed to load: " + reason);
    }
    
  2. वह स्क्रिप्ट अटैच करें जिसमें ऊपर दिए गए फ़ंक्शन को सीन.

  3. + बटन पर क्लिक करें, फिर अटैच किए गए GameObject को छोड़ें पर ले जाएगा.

  4. वह फ़ंक्शन चुनें जिसे आपको विज्ञापन कॉलबैक से लिंक करना है. पैरामीटर वाले विज्ञापन कॉलबैक, डाइनैमिक वैल्यू को स्वीकार करने के लिए फ़ंक्शन चुनें वैरिएबल सेट करें, ताकि आप SDK से पैरामीटर वैल्यू पा सकें.

स्क्रिप्ट से AdGameObject का इस्तेमाल करें

स्क्रिप्ट से AdGameObject इंस्टेंस पाएं

सभी AdGameObject ऑब्जेक्ट में, सुविधा का तरीका LoadAd() है. यह लोड हो जाएगा सादे, बिना टारगेट किए AdRequest वाला विज्ञापन. टारगेटिंग लागू करने के लिए, आपको आपके कॉन्फ़िगर किए गए विज्ञापन अनुरोध का इस्तेमाल करके, LoadAd(AdRequest adRequest).

AdGameObject का इंस्टेंस पाने के लिए, हर फ़ॉर्मैट के लिए नीचे दिए गए तरीके का इस्तेमाल करें:

MobileAds.Instance.GetAd<BannerAdGameObject>("AD_GAMEOBJECT_NAME");

लौटाए गए BannerAdGameObject ऑब्जेक्ट में सुविधा के तरीके भी हैं Hide() और Show().

मध्यवर्ती

MobileAds.Instance.GetAd<InterstitialAdGameObject>("AD_GAMEOBJECT_NAME");

लौटाए गए InterstitialAdGameObject ऑब्जेक्ट में, सुविधाजनक तरीका है ShowIfLoaded().

इनाम दिया गया

MobileAds.Instance.GetAd<RewardedAdGameObject>("AD_GAMEOBJECT_NAME");

लौटाए गए RewardedAdGameObject ऑब्जेक्ट में, सुविधाजनक तरीका है ShowIfLoaded().

उदाहरण के लिए, आपको BannerAdGameObject का एक इंस्टेंस मिल सकता है और इसे इस तरह लोड किया जा सकता है अनुसरण करता है:

using UnityEngine;

using GoogleMobileAds.Api;
using GoogleMobileAds.Placement;

public class BannerTestScript : MonoBehaviour
{
    BannerAdGameObject bannerAd;

    void Start()
    {
        bannerAd = MobileAds.Instance
            .GetAd<BannerAdGameObject>("AD_GAMEOBJECT_NAME");

        bannerAd.LoadAd();
        ...
    }
    ...
}

अगर BannerAd नाम का BannerAdGameObject है, तो आपको इस तरह दिखेगा:

MobileAds.Instance.GetAd<BannerAdGameObject>("BannerAd");

AdGameObject में पहले से मौजूद विज्ञापन ऑब्जेक्ट को ऐक्सेस करें

इन स्निपेट में, संबंधित विज्ञापन ऑब्जेक्ट को ऐक्सेस करने का तरीका बताया गया है AdGameObject के साथ शुरू करते हैं.

BannerAdGameObject bannerAd = MobileAds.Instance
    .GetAd<BannerAdGameObject>("AD_GAMEOBJECT_NAME");

// Access BannerView object
BannerView bannerView = bannerAd.BannerView;

मध्यवर्ती

InterstitialAdGameObject interstitialAdGameObject = MobileAds.Instance
    .GetAd<InterstitialAdGameObject>("AD_GAMEOBJECT_NAME");

// Access InterstitialAd object
InterstitialAd interstitialAd = interstitialAdGameObject.InterstitialAd;

इनाम दिया गया

RewardedAdGameObject rewardedAdGameObject = MobileAds.Instance
    .Get<RewardedAdGameObject>("AD_GAMEOBJECT_NAME");

// Access RewardedAd object
RewardedAd rewardedAd = rewardedAdGameObject.RewardedAd;

उदाहरण

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

यहां गेम को कॉन्फ़िगर करने का एक उदाहरण दिया गया है, ताकि पेज पर अचानक दिखने वाला विज्ञापन लोड हो सके और दिखाया जा सके किसी AdGameObject का इस्तेमाल करके विज्ञापन देख सकते हैं.

सीन में InterstitialAdGameObject जोड़ें और अपने-आप लोड होने की सुविधा चालू करें चालू की गई सुविधा चालू की गई है, ताकि सीन लोड होने पर विज्ञापन अपने-आप लोड हो जाए.

इसके बाद, पक्का करें कि आपने यहां बताए गए तरीके से SDK टूल शुरू किया हो. ध्यान दें कि ऑटो AdGameObject में SDK टूल.

फिर स्क्रीन ट्रांज़िशन के बीच एक पेज पर अचानक दिखने वाला विज्ञापन दिखाने के लिए, InterstitialAdGameObject.ShowIfLoaded() फ़ंक्शन का इस्तेमाल करना होगा. नीचे दिया गया कोड दिखाता है कि एक सीन ट्रांज़िशन के बीच में अचानक दिखने वाले विज्ञापन दिखाने का उदाहरण.

using UnityEngine;
using UnityEngine.SceneManagement;

using GoogleMobileAds.Api;
using GoogleMobileAds.Placement;

public class MainScene : MonoBehaviour
{
    InterstitialAdGameObject interstitialAd;

    void Start()
    {
        interstitialAd = MobileAds.Instance
            .GetAd<InterstitialAdGameObject>("interstitial");

        MobileAds.Initialize((initStatus) => {
            Debug.Log("Initialized MobileAds");
        });
    }

    public void OnClickShowGameSceneButton()
    {
        // Display an interstitial ad
        interstitialAd.ShowIfLoaded();

        // Load a scene named "GameScene"
        SceneManager.LoadScene("GameScene");
    }
}

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

अगर आपको किसी विज्ञापन का मैन्युअल तरीके से अनुरोध करना है, तो अपने-आप लोड होने की सुविधा को बंद करें. इसके लिए, और InterstitialAdGameObject.LoadAd() को कॉल करें फ़ंक्शन का इस्तेमाल करना चाहिए. नीचे दिया गया कोड स्निपेट मैन्युअल रूप से विज्ञापन

public class MainScene : MonoBehaviour
{
    InterstitialAdGameObject interstitialAd;

    void Start()
    {
        interstitialAd = MobileAds.Instance
            .GetAdGameObject<InterstitialAdGameObject>("interstitial");

        MobileAds.Initialize((initStatus) => {
            Debug.Log("MobileAds initialized");

            // Load an interstitial ad after the SDK initialization is complete
            interstitialAd.LoadAd();
        });
    }
    ...
}

"इनाम वाला विज्ञापन देखें" को मैनेज करना बटन की स्थिति

यहां "इनाम वाला विज्ञापन देखें" को चालू करने का तरीका बताया गया है बटन पर क्लिक करें प्लेसमेंट.

सीन में एक बटन GameObject (इस उदाहरण में बटन के नाम से) जोड़ें, जो का इस्तेमाल इनाम वाले विज्ञापन को दिखाने के लिए किया जाएगा. हम इस बटन को सिर्फ़ उपलब्ध कराएंगे जब इनाम वाला विज्ञापन उपलब्ध होता है.

Start() तरीके में, बटन की ऐक्टिव स्थिति को बदलकर false करें. यह बटन को सीन से गायब कर देगा.

public class MainScene : MonoBehaviour
{
    ...
    void Start()
    {
        GameObject.Find("Button").SetActive(false);
        ...
    }
}

सीन में RewardedAdGameObject जोड़ें और AdMob का इनाम वाला डेमो चुनें विज्ञापन ड्रॉपडाउन में से विज्ञापन प्लेसमेंट पर क्लिक करें.

RewardedAdGameObject इंस्पेक्टर में कॉलबैक सेक्शन के नीचे, क्लिक करें On Ad Loaded() से + बटन का इस्तेमाल करके, फ़ंक्शन को कॉल किया जा सकता है जब इनाम वाला विज्ञापन लोड होता है.

उस बटन GameObject को खींचें और छोड़ें जिसे आपने पिछले चरण में जोड़ा था कोई नहीं (ऑब्जेक्ट) फ़ील्ड में. ड्रॉपडाउन से वह फ़ंक्शन चुनें जिसे कॉल करना है. No Function > GameObject > SetActive(bool), उसके बाद चेकबॉक्स पर क्लिक करें यह true को पैरामीटर के तौर पर भेजता है (कॉल SetActive(true)).

इस कॉलबैक सेक्शन में, एक ऐसा इवेंट भी लिंक किया जा सकता है जिसे जब RewardedAd.OnUserEarnedReward इवेंट चालू होता है. ज़्यादा जानकारी के लिए, यह सेक्शन देखें.

इसके बाद, क्लिक करने पर इनाम वाला विज्ञापन दिखाने के लिए बटन बनाएं. On क्लिक() बटन की जांच करने वाले टूल में कॉलबैक सेक्शन, + बटन पर क्लिक करें और इनाम वाले विज्ञापन प्लेसमेंट GameObject (जिसका नाम इनाम वाला विज्ञापन है) को खींचें और छोड़ें उदाहरण के तौर पर) को कोई नहीं (ऑब्जेक्ट) फ़ील्ड में डालें.

इसके बाद, RewardedAdGameObject.ShowIfLoaded() फ़ंक्शन को बटन की On Click() कॉलबैक.

आखिर में, SDK टूल शुरू करना न भूलें. यह कोड स्निपेट इस उदाहरण में इस्तेमाल किए गए सीन के लिए पूरा कोड:

using UnityEngine;

using GoogleMobileAds.Api;

public class MainScene : MonoBehaviour
{
    void Start()
    {
        GameObject.Find("Button").SetActive(false);

        MobileAds.Initialize((initStatus) => {
            Debug.Log("Initialized MobileAds");
        });
    }
}

प्रोजेक्ट को चलाने के बाद, आपको सीन पर दिखाया जाने वाला बटन तब दिखेगा, जब किसी इनाम वाला विज्ञापन लोड हो गया है और दिखाए जाने के लिए तैयार है.

RewardsedAdGameObject के लिए इनाम कॉलबैक कॉन्फ़िगर करें

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

नई स्क्रिप्ट बनाएं और ऐसा फ़ंक्शन तय करें जो Reward को पैरामीटर के तौर पर स्वीकार करता हो के बारे में यहां बताया गया है.

using UnityEngine;
using GoogleMobileAds.Api;

class RewardedTestScript : MonoBehaviour {
    ...
    public void OnUserEarnedReward(Reward reward) {
        Debug.Log("OnUserEarnedReward: reward=" +
            reward.Type + ", amount=" + reward.Amount);
    }
    ...
}

विज्ञापन को छोड़कर, किसी भी GameObject में RewardedTestScript स्क्रिप्ट अटैच करें GameObject ) को प्लेसमेंट में शामिल कर सकते हैं. इस उदाहरण में, यह मुख्य कैमरा गेमऑब्जेक्ट.

सीन में RewardedAdGameObject जोड़ें. इसके बाद, कॉलबैक सेक्शन में RewardedAdGameObject इंस्पेक्टर में, उपयोगकर्ता पर + बटन को क्लिक करें मिला हुआ इनाम (इनाम): इनाम की वैल्यू मिलने पर, कॉल करने की सुविधा चालू करने के लिए किसी उपयोगकर्ता को दिया जाता है.

मुख्य कैमरा गेमऑब्जेक्ट को खींचें और छोड़ें जिसे आपने पहले जोड़ा है कोई नहीं (ऑब्जेक्ट) फ़ील्ड पर जाएगा. इस कॉलम से कॉल किया जाने वाला फ़ंक्शन चुनें ड्रॉपडाउन पर जाएं. No Function > RewardsedTestScript > OnUserReturned Rewards.

प्रोजेक्ट चलाने और इनाम वाला विज्ञापन देखने के बाद, जब आप शामिल होंगे, तब RewardedTestScript.OnUserEarnedReward() शुरू हो जाएगा विज्ञापन के साथ इंटरैक्ट करने के लिए इनाम दिया जाता है.