नेटिव विज्ञापन, विज्ञापन एसेट होते हैं. इन्हें यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट के ज़रिए दिखाया जाता है. ये कॉम्पोनेंट प्लैटफ़ॉर्म पर ही मौजूद होते हैं. उन्हें उन्हीं क्लास का इस्तेमाल करके दिखाया जाता है जिनका इस्तेमाल आपके स्टोरीबोर्ड में पहले से किया जा रहा है. साथ ही, इन्हें आपके ऐप्लिकेशन के विज़ुअल डिज़ाइन के हिसाब से फ़ॉर्मैट किया जा सकता है.
जब कोई नेटिव विज्ञापन लोड होता है, तो आपके ऐप्लिकेशन को एक विज्ञापन ऑब्जेक्ट मिलता है, जिसमें उसकी एसेट होती हैं. Google Mobile Ads SDK के बजाय ऐप्लिकेशन पर उन्हें दिखाया जाता है.
मोटे तौर पर, नेटिव विज्ञापनों को सही तरीके से लागू करने के दो हिस्से हैं: SDK टूल का इस्तेमाल करके विज्ञापन लोड करना और अपने ऐप्लिकेशन में विज्ञापन का कॉन्टेंट दिखाना.
इस पेज पर, SDK टूल इस्तेमाल करके नेटिव विज्ञापन.
ज़रूरी शर्तें
- शुरुआती निर्देश पूरी करें.
हमेशा टेस्ट विज्ञापनों से टेस्ट करें
अपने ऐप्लिकेशन बनाते और उनकी टेस्टिंग करते समय, पक्का करें कि आप लाइव, प्रोडक्शन विज्ञापनों के बजाय टेस्ट विज्ञापनों का इस्तेमाल करें.
टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका, iOS पर नेटिव विज्ञापनों के लिए हमारे खास टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना है:
/6499/example/native
इसे हर अनुरोध पर टेस्ट विज्ञापन दिखाने के लिए खास तौर पर कॉन्फ़िगर किया गया है. साथ ही, कोडिंग, टेस्टिंग, और डीबग करने के दौरान, इसे अपने ऐप्लिकेशन में इस्तेमाल किया जा सकता है. अपना ऐप्लिकेशन पब्लिश करने से पहले यह पक्का कर लें कि आपने इसे अपने विज्ञापन यूनिट आईडी से बदल दिया हो.
Google Mobile Ads SDK के टेस्ट विज्ञापन के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, विज्ञापनों की जांच करना लेख पढ़ें.
विज्ञापन लोड करें
नेटिव विज्ञापन, GADAdLoader
क्लास के साथ लोड होते हैं, जो उनके प्रतिनिधियों को GADAdLoaderDelegate
प्रोटोकॉल के मुताबिक मैसेज भेजते हैं.
सिस्टम के तय किए गए नेटिव फ़ॉर्मैट के अलावा, पसंद के मुताबिक नेटिव विज्ञापन फ़ॉर्मैट भी बनाए जा सकते हैं. इनका इस्तेमाल सीधे तौर पर बेचे जाने वाले नेटिव विज्ञापनों के लिए किया जा सकता है. पसंद के मुताबिक बनाए गए नेटिव विज्ञापन फ़ॉर्मैट की मदद से, ऐप्लिकेशन में आर्बिट्रेरी स्ट्रक्चर्ड डेटा को पास किया जा सकता है. ये विज्ञापन GADCustomNativeAd
क्लास से दिखाए जाते हैं.
विज्ञापन लोड करने की प्रोसेस शुरू करना
विज्ञापन लोड करने से पहले, आपको विज्ञापन लोड करने की प्रोसेस शुरू करनी होगी.
इस कोड से पता चलता है कि GADAdLoader
को कैसे शुरू किया जाता है:
Swift
adLoader = GADAdLoader(adUnitID: "/6499/example/native",
rootViewController: self,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/6499/example/native"
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
आपको विज्ञापन यूनिट आईडी (टेस्ट आईडी का इस्तेमाल किया जा सकता है) की ज़रूरत होगी. साथ ही, आपको adTypes
कलेक्शन में पास करने के लिए कॉन्सटेंट की ज़रूरत होगी, ताकि यह बताया जा सके कि आपको कौनसे नेटिव फ़ॉर्मैट का अनुरोध करना है, और options
पैरामीटर में सेट किए जाने वाले विकल्प की जानकारी देनी होगी. options
पैरामीटर के लिए संभावित वैल्यू की सूची, नेटिव विज्ञापन के विकल्पों की सेटिंग वाले पेज पर देखी जा सकती है.
adTypes
कलेक्शन में इनमें से एक या इससे ज़्यादा कॉन्स्टेंट शामिल होने चाहिए
:
विज्ञापन लोड करने वाले प्रतिनिधि को लागू करना
विज्ञापन लोड करने वाले जिस प्रतिनिधि को आपके विज्ञापन का टाइप दिखाना है उसके लिए खास प्रोटोकॉल लागू करने होंगे.
नेटिव विज्ञापनों के लिए,
GADNativeAdLoaderDelegate
प्रोटोकॉल में एक मैसेज शामिल होता है. यह मैसेज उस प्रतिनिधि को भेजा जाता है,
जब कोई नेटिव विज्ञापन लोड होता है.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
GADCustomNativeAdLoaderDelegate
प्रोटोकॉल में एक मैसेज शामिल होता है, जो
कस्टम टेंप्लेट विज्ञापन लोड होने पर प्रतिनिधि को भेजा जाता है.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
विज्ञापन जोड़ने का अनुरोध करें
GADAdLoader
शुरू होने के बाद, इसके loadRequest:
तरीके को कॉल करके विज्ञापन का अनुरोध करें:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
GADAdLoader
में मौजूद loadRequest:
तरीके में वही GAMRequest
ऑब्जेक्ट इस्तेमाल किए जा सकते हैं जो बैनर और पेज पर अचानक दिखने वाले विज्ञापनों के तौर पर होते हैं. टारगेटिंग की जानकारी
जोड़ने के लिए, अनुरोध वाले ऑब्जेक्ट का इस्तेमाल ठीक उसी तरह किया जाता है,
जैसे दूसरे विज्ञापन टाइप के साथ किया जाता है.
लोड होने की प्रोसेस पूरी होने का पता लगाना
जब कोई ऐप्लिकेशन loadRequest:
को कॉल करता है, तो वह इन फ़ोन पर किए गए कॉल का इस्तेमाल करके किए गए अनुरोध के नतीजे पा सकता है:
GADAdLoaderDelegate
मेंadLoader:didFailToReceiveAdWithError:
GADNativeAdLoaderDelegate
मेंadLoader:didReceiveNativeAd:
किसी एक विज्ञापन के लिए अनुरोध करने पर, उनमें से किसी एक तरीके को एक ही कॉल किया जाएगा.
पूरे न हो पाने वाले अनुरोधों पर कार्रवाई करना
ऊपर दिए गए प्रोटोकॉल, GADAdLoaderDelegate
प्रोटोकॉल को बढ़ाते हैं. यह प्रोटोकॉल, विज्ञापनों के लोड न हो पाने पर भेजे जाने वाले मैसेज के बारे में बताता है.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
नेटिव विज्ञापन इवेंट की सूचना पाएं
नेटिव विज्ञापन इंटरैक्शन से जुड़े इवेंट की सूचना पाने के लिए, नेटिव विज्ञापन की डेलिगेट प्रॉपर्टी सेट करें:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
इसके बाद, इन लोगों को अपने संपर्कों का ऐक्सेस देने के लिए,
GADNativeAdDelegate
को लागू करें:
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
सबसे सही तरीके
विज्ञापन लोड करते समय इन नियमों का पालन करें.
जो ऐप्लिकेशन किसी सूची में नेटिव विज्ञापनों का इस्तेमाल करते हैं उन्हें विज्ञापनों की सूची को पहले से कैश मेमोरी में सेव करना चाहिए.
विज्ञापनों को प्री-कैश करते समय, कैश मेमोरी मिटाएं और एक घंटे बाद पेज को फिर से लोड करें.
जब तक पिछला अनुरोध लोड नहीं हो जाता, तब तक
loadRequest:
कोGADAdLoader
पर दोबारा कॉल न करें, जैसा किadLoaderDidFinishLoading:
में बताया गया है.
अपना विज्ञापन दिखाएं
कोई विज्ञापन लोड करने के बाद, उसे आपके उपयोगकर्ताओं को दिखाना ही बाकी है. इसका तरीका जानने के लिए, हमारी नेटिव ऐडवांस्ड गाइड पर जाएं.