बैनर व्यू, रेक्टैंगल के आकार वाली इमेज या टेक्स्ट विज्ञापन होते हैं. ये स्क्रीन पर एक जगह घेरते हैं. जब उपयोगकर्ता आपके ऐप्लिकेशन से इंटरैक्ट करते हैं, तब स्क्रीन पर बैनर विज्ञापन दिखते रहते हैं. इसके अलावा, ये विज्ञापन कुछ समय बाद अपने-आप रीफ़्रेश हो सकते हैं. अगर आपने मोबाइल पर विज्ञापन दिखाने की शुरुआत की है, तो बैनर विज्ञापन आपके लिए सबसे सही विकल्प हैं.
इस गाइड में, Unity ऐप्लिकेशन में बैनर व्यू इंटिग्रेट करने का तरीका बताया गया है. इसमें कोड स्निपेट और निर्देशों के अलावा, बैनर का साइज़ सही तरीके से सेट करने के बारे में जानकारी भी दी गई है. साथ ही, इसमें अन्य संसाधनों के लिंक भी शामिल हैं.
ज़रूरी शर्तें
आगे बढ़ने से पहले, सेट अप करें Google Mobile Ads Unity Plugin.
हमेशा टेस्ट विज्ञापनों का इस्तेमाल करके टेस्ट करना
यहां दिए गए सैंपल कोड में, एक विज्ञापन यूनिट आईडी शामिल है. इसका इस्तेमाल, टेस्ट विज्ञापनों के लिए अनुरोध करने के लिए किया जा सकता है. इसे खास तौर पर इस तरह कॉन्फ़िगर किया गया है कि हर अनुरोध के लिए, प्रोडक्शन विज्ञापनों के बजाय टेस्ट विज्ञापन दिखाए जा सकें. इसलिए, इसका इस्तेमाल सुरक्षित है.
हालांकि, Ad Manager के वेब इंटरफ़ेस में किसी ऐप्लिकेशन को रजिस्टर करने और अपने ऐप्लिकेशन में इस्तेमाल करने के लिए, विज्ञापन यूनिट आईडी बनाने के बाद, डेवलपमेंट के दौरान अपने डिवाइस को साफ़ तौर पर टेस्ट डिवाइस के तौर पर कॉन्फ़िगर करें.
/21775744923/example/fixed-size-banner
Google Mobile Ads Unity Plugin को शुरू करना
विज्ञापन लोड करने से पहले, अपने ऐप्लिकेशन में Google Mobile Ads Unity Plugin को कॉल करके
MobileAds.Initialize() को शुरू करें. इसे सिर्फ़ एक बार करना होगा. सबसे सही तरीका है कि इसे ऐप्लिकेशन लॉन्च के समय किया जाए.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
अगर मीडिएशन का इस्तेमाल किया जा रहा है, तो विज्ञापन लोड करने से पहले, कॉलबैक होने तक इंतज़ार करें. इससे यह पक्का होगा कि सभी मीडिएशन अडैप्टर शुरू हो गए हैं.
BannerView का उदाहरण
यहां दिए गए सैंपल कोड में, बैनर व्यू का इस्तेमाल करने का तरीका बताया गया है. इस उदाहरण में, बैनर व्यू का इंस्टेंस बनाएं. इसके बाद, बैनर व्यू में विज्ञापन लोड करने के लिए, AdManagerAdRequest का इस्तेमाल करें. इसके बाद, लाइफ़साइकल इवेंट को मैनेज करके, इसकी क्षमताओं को बढ़ाएं.
बैनर व्यू बनाना
बैनर व्यू का इस्तेमाल करने का पहला चरण, बैनर व्यू का इंस्टेंस बनाना है.
AD_UNIT_ID को अपने विज्ञापन यूनिट आईडी से बदलें.
AdManagerBannerView के कंस्ट्रक्टर में ये पैरामीटर होते हैं:
adUnitId: लोड किए जाने वाले बैनर विज्ञापन का विज्ञापन यूनिट आईडी.AdSize: वह बैनर साइज़ जिसका इस्तेमाल करना है.AdPosition: वह पोज़िशन जहां बैनर व्यू प्लेस किए जाने चाहिए.
(ज़रूरी नहीं) कस्टम पोज़िशन के साथ बैनर व्यू बनाना
AdPosition वैल्यू से मिलने वाले कंट्रोल के मुकाबले, स्क्रीन पर बैनर व्यू को प्लेस करने के लिए ज़्यादा कंट्रोल पाने के लिए, x- और y-कोऑर्डिनेट वाले कंस्ट्रक्टर का इस्तेमाल करें:
बैनर व्यू का सबसे ऊपर वाला बायां कोना, कंस्ट्रक्टर को पास की गई x और y वैल्यू पर प्लेस किया जाता है. इसमें ऑरिजिन, स्क्रीन का सबसे ऊपर वाला बायां कोना होता है.
(ज़रूरी नहीं) कस्टम साइज़ के साथ बैनर व्यू बनाना
AdSize कॉन्सटेंट का इस्तेमाल करने के अलावा, अपने विज्ञापन के लिए कस्टम साइज़ भी तय किया जा सकता है:
(ज़रूरी नहीं) एक से ज़्यादा साइज़ के विज्ञापन
Ad Manager में, एक से ज़्यादा साइज़ के विज्ञापन तय किए जा सकते हैं. ये विज्ञापन, AdManagerBannerView में दिखाए जा सकते हैं. एसडीके में यह सुविधा लागू करने से पहले, अलग-अलग साइज़ वाले क्रिएटिव से जुड़ी एक ही विज्ञापन यूनिट को टारगेट करने वाला लाइन आइटम बनाएं.
अपने ऐप्लिकेशन में, एक से ज़्यादा AdSize पैरामीटर को ValidAdSizes में पास करें:
अगर रीफ़्रेश के समय AdManagerAdView का साइज़ बदलता है, तो आपका लेआउट नए साइज़ के हिसाब से अपने-आप अडजस्ट हो जाना चाहिए. AdManagerAdView , अगले विज्ञापन के दिखने तक, पहले पैरामीटर में पास किए गए साइज़ के हिसाब से दिखता है.
बैनर विज्ञापन लोड करना
AdManagerBannerView को प्लेस करने के बाद, AdManagerBannerView क्लास में LoadAd() तरीके से विज्ञापन लोड करें. इसमें एक पैरामीटर होता है, जिसमें
रनटाइम की जानकारी होती है. जैसे, टारगेटिंग की जानकारी, एक्सक्लूज़न लेबल, और पब्लिशर की दी गई
आईडी.
विज्ञापन लोड करने के लिए, AdManagerAdRequest बनाएं और इसे LoadAd() तरीके से पास करें.
// Send a request to load an ad into the banner view.
adManagerBannerView.LoadAd(new AdManagerAdRequest());
बैनर व्यू के इवेंट सुनना
विज्ञापन के व्यवहार को पसंद के मुताबिक बनाने के लिए, विज्ञापन के लाइफ़साइकल में कई इवेंट को हुक किया जा सकता है. जैसे, लोड करना, खोलना या बंद करना. इन इवेंट को सुनने के लिए, कोई डेलिगेट रजिस्टर करें:
adManagerBannerView.OnBannerAdLoaded += () =>
{
// Raised when an ad is loaded into the banner view.
};
adManagerBannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
// Raised when an ad fails to load into the banner view.
};
adManagerBannerView.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
adManagerBannerView.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
adManagerBannerView.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
adManagerBannerView.OnAdFullScreenContentOpened += () =>
{
// Raised when an ad opened full screen content.
};
adManagerBannerView.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
बैनर व्यू को बंद करना
बैनर को बंद करने के लिए, संसाधनों को रिलीज़ करने के लिए Destroy() तरीके को कॉल करें:
if (adManagerBannerView != null)
{
// Always destroy the banner view when no longer needed.
adManagerBannerView.Destroy();
adManagerBannerView = null;
}
लोड नहीं हो पाने वाले बैनर के लिए, हमारा सुझाव है कि आप बैनर को बंद करने और नया बैनर बनाने के बजाय, उसे रीफ़्रेश करें. ज़्यादा जानकारी के लिए, विज्ञापन रीफ़्रेश करना लेख पढ़ें.
विज्ञापन रीफ़्रेश करना
अगर आपने अपनी विज्ञापन यूनिट को रीफ़्रेश करने के लिए कॉन्फ़िगर किया है, तो विज्ञापन लोड नहीं होने पर, आपको किसी दूसरे विज्ञापन के लिए अनुरोध करने की ज़रूरत नहीं है. Google Mobile Ads Unity Plugin तय की गई किसी भी रीफ़्रेश दर का पालन करता है जिसे आपने Ad Manager के यूज़र इंटरफ़ेस (यूआई) में तय किया है. अगर आपने रीफ़्रेश की सुविधा चालू नहीं की है, तो नया अनुरोध करें. विज्ञापन यूनिट के रीफ़्रेश के बारे में ज़्यादा जानने के लिए, जैसे कि रीफ़्रेश दर सेट करना, देखें मोबाइल ऐप्लिकेशन में विज्ञापनों के लिए रीफ़्रेश दर.
बैनर आकार
यहां दी गई टेबल में, स्टैंडर्ड बैनर साइज़ की सूची दी गई है:
| डीपी में साइज़ (चौड़ाई x ऊंचाई) | ब्यौरा | उपलब्धता | AdSize कॉन्सटेंट |
|---|---|---|---|
| 320x50 | स्टैंडर्ड बैनर | फ़ोन और टेबलेट | BANNER |
| 320x100 | बड़ा बैनर | फ़ोन और टेबलेट | LARGE_BANNER |
| 300x250 | IAB मीडियम रेक्टैंगल | फ़ोन और टेबलेट | MEDIUM_RECTANGLE |
| 468x60 | IAB फ़ुल-साइज़ बैनर | टैबलेट | FULL_BANNER |
| 728x90 | IAB लीडरबोर्ड | टैबलेट | LEADERBOARD |
| दी गई चौड़ाई x अडैप्टिव ऊंचाई | अडैप्टिव बैनर | फ़ोन और टेबलेट | लागू नहीं |
| स्क्रीन की चौड़ाई x 32|50|90 | स्मार्ट बैनर | फ़ोन और टेबलेट | SMART_BANNER |
| स्मार्ट बैनर की जगह इस्तेमाल किए जाने वाले स्मार्ट बैनर के बारे में अडैप्टिव बैनर, ज़्यादा जानें. | |||
ऐप्लिकेशन इवेंट
ऐप्लिकेशन इवेंट की मदद से, ऐसे विज्ञापन बनाए जा सकते हैं जो अपने ऐप्लिकेशन कोड को मैसेज भेज सकते हैं. इसके बाद, ऐप्लिकेशन इन मैसेज के आधार पर कार्रवाई कर सकता है.
AppEvent का इस्तेमाल करके, Ad Manager के खास ऐप्लिकेशन इवेंट सुने जा सकते हैं. ये इवेंट, विज्ञापन के लाइफ़साइकल के दौरान कभी भी हो सकते हैं. यहां तक कि लोड को कॉल करने से पहले भी.
किसी विज्ञापन में ऐप्लिकेशन इवेंट होने पर, OnAppEventReceived ट्रिगर होता है. यहां बताया गया है कि अपने कोड में इस इवेंट को कैसे मैनेज किया जा सकता है:
adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
Debug.Log($"Received app event from the ad: {args.Name}, {args.Data}.");
};
यहां एक उदाहरण दिया गया है, जिसमें दिखाया गया है कि 'color' नाम वाले ऐप्लिकेशन इवेंट के आधार पर, अपने ऐप्लिकेशन के बैकग्राउंड का रंग कैसे बदला जा सकता है:
adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
if (args.Name == "color")
{
Color color;
if (ColorUtility.TryParseHtmlString(args.Data, out color))
{
renderer.material.color = color;
}
}
};
यहां, वह क्रिएटिव दिया गया है जो 'color' ऐप्लिकेशन इवेंट भेजता है:
<html>
<head>
<script src="//www.gstatic.com/afma/api/v1/google_mobile_app_ads.js"></script>
<script>
document.addEventListener("DOMContentLoaded", function() {
// Send a color=green event when ad loads.
admob.events.dispatchAppEvent("color", "green");
document.getElementById("ad").addEventListener("click", function() {
// Send a color=blue event when ad is clicked.
admob.events.dispatchAppEvent("color", "blue");
});
});
</script>
<style>
#ad {
width: 320px;
height: 50px;
top: 0;
left: 0;
font-size: 24pt;
font-weight: bold;
position: absolute;
background: black;
color: white;
text-align: center;
}
</style>
</head>
<body>
<div id="ad">Carpe diem!</div>
</body>
</html>
अन्य संसाधन
- HelloWorld का उदाहरण: इसमें सभी विज्ञापन फ़ॉर्मैट को मिनिमल तरीके से लागू किया गया है.