नेटिव विज्ञापनों में कई ऐडवांस सुविधाएं होती हैं. इनकी मदद से, विज्ञापन को अपनी ज़रूरत के हिसाब से बनाया जा सकता है. साथ ही, विज्ञापन का अनुभव बेहतर बनाया जा सकता है. इस गाइड में, नेटिव विज्ञापनों की ऐडवांस सुविधाओं का इस्तेमाल करने का तरीका बताया गया है.
ज़रूरी शर्तें
- नेटिव विज्ञापन फ़ॉर्मैट को इंटिग्रेट करें.
ऐसेट कंट्रोल
इस सेक्शन में, नेटिव विज्ञापनों में क्रिएटिव ऐसेट को पसंद के मुताबिक बनाने का तरीका बताया गया है. आपके पास मीडिया ऐसेट के लिए पसंदीदा आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) तय करने का विकल्प होता है. साथ ही, यह तय करने का विकल्प होता है कि इमेज ऐसेट कैसे डाउनलोड और दिखाई जाएं.
मीडिया के पसंदीदा आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) को कंट्रोल करने की सुविधा
मीडिया के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) कंट्रोल की मदद से, विज्ञापन क्रिएटिव के आसपेक्ट रेशियो के लिए प्राथमिकता तय की जा सकती है.
NativeAdOptions.MediaAspectRatio वैल्यू के साथ NativeAdOptions.Builder.setMediaAspectRatio() को कॉल करें.
इस पैरामीटर को सेट न करने पर, दिखाए गए विज्ञापन का कोई भी मीडिया आसपेक्ट रेशियो हो सकता है.
इस सेटिंग को चालू करने पर, आपको पसंदीदा आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) तय करने का विकल्प मिलेगा. इससे उपयोगकर्ता अनुभव को बेहतर बनाया जा सकेगा.
यहां दिए गए उदाहरण में, एसडीके को यह निर्देश दिया गया है कि वह किसी खास आसपेक्ट रेशियो वाली इमेज या वीडियो को प्राथमिकता दे.
Java
Kotlin
AD_UNIT_ID की जगह अपना विज्ञापन यूनिट का आईडी डालें.
इमेज डाउनलोड करने का कंट्रोल
इमेज डाउनलोड करने के कंट्रोल की मदद से, यह तय किया जा सकता है कि एसडीके, इमेज ऐसेट या सिर्फ़ यूआरआई दिखाए.
boolean वैल्यू के साथ NativeAdOptions.Builder.setReturnUrlsForImageAssets() को कॉल करें.
इमेज डाउनलोड करने के कंट्रोल डिफ़ॉल्ट रूप से बंद होते हैं.
इस सुविधा के बंद होने पर, Google Mobile Ads SDK (Legacy) आपके लिए इमेज और यूआरआई, दोनों को भरता है.
इस सुविधा के चालू होने पर, एसडीके सिर्फ़ यूआरआई भरता है. इससे आपको अपनी पसंद के हिसाब से असली इमेज डाउनलोड करने की अनुमति मिलती है.
यहां दिए गए उदाहरण में, एसडीके को सिर्फ़ यूआरआई वापस भेजने का निर्देश दिया गया है.
Java
Kotlin
इमेज पेलोड कंट्रोल
कुछ विज्ञापनों में सिर्फ़ एक इमेज के बजाय, इमेज की एक सीरीज़ होती है. इस सुविधा का इस्तेमाल करके, यह बताएं कि आपका ऐप्लिकेशन सभी इमेज दिखाने के लिए तैयार है या सिर्फ़ एक इमेज दिखाने के लिए.
boolean वैल्यू के साथ NativeAdOptions.Builder.setRequestMultipleImages() को कॉल करें.
इमेज पेलोड कंट्रोल की सुविधा डिफ़ॉल्ट रूप से बंद होती है.
इस सुविधा के बंद होने पर, आपका ऐप्लिकेशन एसडीके को यह निर्देश देता है कि वह उन सभी ऐसेट के लिए सिर्फ़ पहली इमेज दिखाए जिनमें एक सीरीज़ शामिल है.
इस सुविधा को चालू करने पर, आपका ऐप्लिकेशन यह दिखाता है कि वह एक से ज़्यादा इमेज वाली सभी ऐसेट के लिए, सभी इमेज दिखाने के लिए तैयार है.
यहां दिए गए उदाहरण में, एसडीके को कई इमेज ऐसेट वापस भेजने का निर्देश दिया गया है.
Java
Kotlin
AdChoices प्लेसमेंट
इस सेक्शन में, AdChoices ओवरले को सही जगह पर रखने का तरीका बताया गया है. आपके पास इसे स्क्रीन के चारों कोनों में से किसी एक कोने पर रखने या कस्टम व्यू में रेंडर करने का विकल्प होता है.
AdChoices की पोज़िशन कंट्रोल करने की सुविधा
AdChoices की पोज़िशन कंट्रोल की मदद से, यह चुना जा सकता है कि AdChoices आइकॉन को किस कोने में रेंडर करना है.
NativeAdOption.AdChoicesPlacement वैल्यू के साथ NativeAdOptions.Builder.setAdChoicesPlacement() को कॉल करें.
अगर इसे सेट नहीं किया जाता है, तो AdChoices आइकॉन की पोज़िशन सबसे ऊपर दाईं ओर सेट हो जाती है.
अगर सेट किया गया है, तो AdChoices को अनुरोध के मुताबिक कस्टम पोज़िशन पर रखा जाता है.
यहां दिए गए उदाहरण में, AdChoices इमेज की पोज़िशन को पसंद के मुताबिक सेट करने का तरीका बताया गया है.
Java
Kotlin
AdChoices कस्टम व्यू
AdChoices के कस्टम व्यू की सुविधा की मदद से, AdChoices आइकॉन को अपनी पसंद की जगह पर रखा जा सकता है. यह AdChoices की पोज़िशन कंट्रोल करने की सुविधा से अलग है. इसमें सिर्फ़ चार कोनों में से किसी एक को चुनने की अनुमति होती है.
AdChoicesView वैल्यू के साथ NativeAdView.setAdChoicesView() को कॉल करें.
यहां दिए गए उदाहरण में, AdChoices की कस्टम व्यू सेट करने का तरीका बताया गया है. इसमें AdChoices आइकॉन को AdChoicesView में रेंडर किया जाता है.
Java
NativeAdView nativeAdView = new NativeAdView(context);
AdChoicesView adChoicesView = new AdChoicesView(context);
nativeAdView.setAdChoicesView(adChoicesView);
Kotlin
val nativeAdView = NativeAdView(context)
val adChoicesView = AdChoicesView(context)
nativeAdView.adChoicesView = adChoicesView
वीडियो के कंट्रोल
इस सेक्शन में, वीडियो विज्ञापनों के लिए वीडियो चलाने के अनुभव को पसंद के मुताबिक बनाने का तरीका बताया गया है. आपके पास, वीडियो के शुरू होने पर उसे म्यूट करने की स्थिति सेट करने और वीडियो चलाने के लिए कस्टम कंट्रोल लागू करने का विकल्प होता है.
म्यूट करने की सुविधा शुरू करना
'शुरू होने पर म्यूट' सेटिंग की मदद से, वीडियो के शुरू होने पर ऑडियो को बंद या चालू किया जा सकता है.
boolean वैल्यू के साथ VideoOptions.Builder.setStartMuted() को कॉल करें.
वीडियो को डिफ़ॉल्ट रूप से म्यूट करके चलाने की सुविधा चालू रहती है.
इस सुविधा के बंद होने पर, आपका ऐप्लिकेशन अनुरोध करता है कि वीडियो ऑडियो के साथ शुरू होना चाहिए.
यह सुविधा चालू होने पर, आपका ऐप्लिकेशन अनुरोध करता है कि वीडियो बिना आवाज़ के शुरू होना चाहिए.
यहां दिए गए उदाहरण में, अनम्यूट किए गए ऑडियो के साथ वीडियो शुरू करने का तरीका दिखाया गया है.
Java
Kotlin
पसंद के मुताबिक बनाए गए प्लेबैक कंट्रोल
इसकी मदद से, वीडियो चलाने, रोकने या म्यूट करने के लिए, वीडियो इनपुट कंट्रोल के लिए अनुरोध किया जा सकता है.
boolean वैल्यू के साथ VideoOptions.Builder.setCustomControlsRequested() को कॉल करें.
कस्टम प्लेबैक कंट्रोल की सुविधा डिफ़ॉल्ट रूप से बंद होती है.
इसे बंद करने पर, आपके वीडियो में एसडीके रेंडर किए गए इनपुट कंट्रोल दिखेंगे.
अगर विज्ञापन में वीडियो कॉन्टेंट है और कस्टम कंट्रोल चालू हैं, तो आपको विज्ञापन के साथ-साथ अपने कस्टम कंट्रोल दिखाने चाहिए. ऐसा इसलिए, क्योंकि विज्ञापन में कोई कंट्रोल नहीं दिखेगा. इसके बाद, कंट्रोलर,
यहां दिए गए उदाहरण में, कस्टम प्लेबैक कंट्रोल वाले वीडियो का अनुरोध करने का तरीका बताया गया है.
Java
Kotlin
देखें कि कस्टम कंट्रोल चालू हैं या नहीं
अनुरोध के समय यह पता नहीं चलता कि दिखाए गए विज्ञापन में कस्टम वीडियो कंट्रोल की अनुमति होगी या नहीं. इसलिए, आपको यह जांच करनी होगी कि उसमें कस्टम कंट्रोल की सुविधा चालू है या नहीं.
Java
MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
VideoController videoController = mediaContent.getVideoController();
boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}
Kotlin
val mediaContent = nativeAd.mediaContent
if (mediaContent != null) {
val videoController = mediaContent.videoController
val canShowCustomControls = videoController.isCustomControlsEnabled
}
वीडियो के लिए कस्टम कंट्रोल रेंडर करना
यहां दिए गए सबसे सही तरीकों का इस्तेमाल करके, वीडियो के लिए कस्टम कंट्रोल रेंडर करें:
- कस्टम कंट्रोल व्यू को नेटिव विज्ञापन व्यू के चाइल्ड के तौर पर रेंडर करें. इस तरीके से, ओपन मेज़रमेंट की मदद से विज्ञापन दिखने से जुड़े आंकड़ों का हिसाब लगाते समय, कस्टम कंट्रोल को रुकावट के तौर पर नहीं माना जाता.
- पूरे मीडिया व्यू पर, न दिखने वाला ओवरले रेंडर करने से बचें. ओवरले, मीडिया व्यू पर क्लिक करने से रोकते हैं. इससे नेटिव विज्ञापनों की परफ़ॉर्मेंस पर बुरा असर पड़ता है. इसके बजाय, एक छोटा ओवरले बनाएं. यह इतना बड़ा होना चाहिए कि इसमें कंट्रोल फ़िट हो जाएं.
क्लिक करने के लिए कस्टम जेस्चर
कस्टम क्लिक जेस्चर, नेटिव विज्ञापनों की एक सुविधा है. इसकी मदद से, विज्ञापन व्यू पर किए गए स्वाइप को विज्ञापन क्लिक के तौर पर रजिस्टर किया जा सकता है. यह उन ऐप्लिकेशन के साथ काम करता है जिनमें कॉन्टेंट पर नेविगेट करने के लिए, स्वाइप करने वाले जेस्चर का इस्तेमाल किया जाता है. इस गाइड में, नेटिव विज्ञापनों पर क्लिक करने के लिए कस्टम जेस्चर चालू करने का तरीका बताया गया है.
NativeAdOptions.Builder.enableCustomClickGestureDirection() को NativeAdOptions.SwipeGestureDirection और boolean के साथ कॉल करें. इससे यह पता चलेगा कि टैप को क्लिक के तौर पर अनुमति देनी है या नहीं.
क्लिक करने के लिए पसंद के मुताबिक जेस्चर इस्तेमाल करने की सुविधा डिफ़ॉल्ट रूप से बंद होती है.
इस सुविधा के बंद होने पर, आपका ऐप्लिकेशन सामान्य क्लिक के हिसाब से काम करता है.
इस सेटिंग को चालू करने पर, आपका ऐप्लिकेशन स्वाइप करने के लिए कस्टम जेस्चर की सुविधा के साथ काम करता है.
यहां दिए गए उदाहरण में, दाईं ओर स्वाइप करने के लिए कस्टम स्वाइप जेस्चर लागू किया गया है. साथ ही, टैप करने की सामान्य सुविधा को बनाए रखा गया है.
Java
Kotlin
स्वाइप करने के जेस्चर वाले इवेंट को मॉनिटर करने की अनुमति
स्वाइप जेस्चर क्लिक रिकॉर्ड होने पर, Google Mobile Ads SDK (Legacy), मौजूदा onAdClicked() तरीके के साथ-साथ AdListener पर onAdSwipeGestureClicked() तरीके को भी लागू करता है.
Java
AdLoader adLoader =
new AdLoader.Builder(context, AD_UNIT_ID)
.withAdListener(
new AdListener() {
// Called when a swipe gesture click is recorded.
@Override
public void onAdSwipeGestureClicked() {
// Called when a swipe gesture click is recorded.
Log.d(TAG, "A swipe gesture click has occurred.");
}
@Override
public void onAdClicked() {
// Called when a swipe gesture click or a tap click is recorded, as
// configured in NativeAdOptions.
Log.d(TAG, "A swipe gesture click or a tap click has occurred.");
}
})
.build();
Kotlin
val adLoader =
AdLoader.Builder(context, AD_UNIT_ID)
.withAdListener(
object : AdListener() {
override fun onAdSwipeGestureClicked() {
// Called when a swipe gesture click is recorded.
Log.d(TAG, "A swipe gesture click has occurred.")
}
override fun onAdClicked() {
// Called when a swipe gesture click or a tap click is recorded, as
// configured in NativeAdOptions.
Log.d(TAG, "A swipe gesture click or a tap click has occurred.")
}
}
)
.build()
मीडिएशन
कस्टम क्लिक जेस्चर, सिर्फ़ उन नेटिव विज्ञापनों पर काम करते हैं जिन्हें Google Mobile Ads SDK रेंडर करता है. विज्ञापन दिखाने वाले ऐसे सोर्स जो रेंडरिंग के लिए, तीसरे पक्ष के एसडीके टूल का इस्तेमाल करते हैं वे कस्टम क्लिक डायरेक्टिव सेटिंग का पालन नहीं करते.