नेटिव विज्ञापनों में कई ऐडवांस सुविधाएं होती हैं. इनकी मदद से, विज्ञापनों को ज़्यादा से ज़्यादा कस्टमाइज़ किया जा सकता है और उपयोगकर्ताओं को बेहतर विज्ञापन अनुभव दिया जा सकता है. इस गाइड में, नेटिव विज्ञापनों की ऐडवांस सुविधाओं को इस्तेमाल करने का तरीका बताया गया है.
ज़रूरी शर्तें
- नेटिव विज्ञापन फ़ॉर्मैट को इंटिग्रेट करें.
ऐसेट कंट्रोल
इस सेक्शन में, नेटिव विज्ञापनों में क्रिएटिव ऐसेट को पसंद के मुताबिक बनाने का तरीका बताया गया है. आपके पास मीडिया ऐसेट के लिए, अपनी पसंद का आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) तय करने का विकल्प होता है. साथ ही, यह तय किया जा सकता है कि इमेज ऐसेट कैसे डाउनलोड और दिखाई जाएं.
मीडिया के लिए पसंदीदा आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के कंट्रोल
मीडिया के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के कंट्रोल की मदद से, विज्ञापन क्रिएटिव के आसपेक्ट रेशियो के लिए अपनी प्राथमिकता तय की जा सकती है.
NativeAdOptions.MediaAspectRatio वैल्यू के साथ NativeAdOptions.Builder.setMediaAspectRatio() को कॉल करें.
अगर इसे सेट नहीं किया जाता है, तो दिखाए जाने वाले विज्ञापन का मीडिया आसपेक्ट रेशियो कुछ भी हो सकता है.
इसे सेट करने पर, आपको उपयोगकर्ता अनुभव को बेहतर बनाने में मदद मिलेगी. इसके लिए, आपको अपनी पसंद के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की जानकारी देनी होगी.
नीचे दिए गए उदाहरण में, एसडीके को किसी खास आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) वाली इमेज या वीडियो को प्राथमिकता देने का निर्देश दिया गया है.
Java
Kotlin
AD_UNIT_ID को अपनी विज्ञापन यूनिट के आईडी से बदलें.
इमेज डाउनलोड करने का कंट्रोल
इमेज डाउनलोड कंट्रोल की मदद से, यह तय किया जा सकता है कि एसडीके, इमेज ऐसेट दिखाएगा या सिर्फ़ यूआरआई.
NativeAdOptions.Builder.setReturnUrlsForImageAssets() को boolean वैल्यू के साथ कॉल करें.
इमेज डाउनलोड करने का कंट्रोल, डिफ़ॉल्ट रूप से बंद होता है.
बंद होने पर, Google Mobile Ads SDK (Legacy) आपके लिए इमेज और यूआरआई, दोनों को अपने-आप भर देता है.
इस सुविधा के चालू होने पर, एसडीके सिर्फ़ यूआरआई को पॉप्युलेट करता है. इससे आपको अपनी पसंद के मुताबिक असल इमेज डाउनलोड करने की सुविधा मिलती है.
नीचे दिए गए उदाहरण में, एसडीके को सिर्फ़ यूआरआई दिखाने का निर्देश दिया गया है.
Java
Kotlin
इमेज पेलोड कंट्रोल
कुछ विज्ञापनों में एक के बजाय कई इमेज होती हैं. इस सुविधा का इस्तेमाल करके बताएं कि आपका ऐप्लिकेशन, सभी इमेज दिखाने के लिए तैयार है या सिर्फ़ एक इमेज.
NativeAdOptions.Builder.setRequestMultipleImages() को boolean वैल्यू के साथ कॉल करें.
इमेज पेलोड कंट्रोल, डिफ़ॉल्ट रूप से बंद होते हैं.
इस सेटिंग को बंद करने पर, आपका ऐप्लिकेशन SDK टूल को निर्देश देता है कि वह सीरीज़ वाली किसी भी ऐसेट के लिए सिर्फ़ पहली इमेज उपलब्ध कराए.
इस सेटिंग के चालू होने पर, आपका ऐप्लिकेशन यह दिखाता है कि वह उन सभी ऐसेट की इमेज दिखाने के लिए तैयार है जिनमें एक से ज़्यादा इमेज हैं.
यहां दिए गए उदाहरण में, एसडीके को कई इमेज ऐसेट दिखाने का निर्देश दिया गया है.
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
वीडियो के कंट्रोल
इस सेक्शन में, वीडियो विज्ञापनों के लिए प्लेबैक के अनुभव को पसंद के मुताबिक बनाने का तरीका बताया गया है. आपके पास, वीडियो को शुरुआत में म्यूट करने और कस्टम प्लेबैक कंट्रोल लागू करने का विकल्प होता है.
म्यूट करने की सुविधा शुरू करना
वीडियो के शुरू होने पर म्यूट रहने की सुविधा से, वीडियो के शुरुआती ऑडियो को बंद या चालू किया जा सकता है.
VideoOptions.Builder.setStartMuted() को boolean वैल्यू के साथ कॉल करें.
म्यूट करके शुरू करने की सुविधा, डिफ़ॉल्ट रूप से चालू होती है.
इस सेटिंग को बंद करने पर, आपका ऐप्लिकेशन यह अनुरोध करता है कि वीडियो ऑडियो के साथ शुरू होना चाहिए.
यह सुविधा चालू होने पर, आपका ऐप्लिकेशन यह अनुरोध करता है कि वीडियो म्यूट करके शुरू होना चाहिए.
नीचे दिए गए उदाहरण में, वीडियो को अनम्यूट किए गए ऑडियो के साथ शुरू करने का तरीका बताया गया है.
Java
Kotlin
पसंद के मुताबिक बनाए गए प्लेबैक कंट्रोल
इससे आपको वीडियो चलाने, रोकने या म्यूट करने के लिए, कस्टम वीडियो इनपुट कंट्रोल का अनुरोध करने की सुविधा मिलती है.
VideoOptions.Builder.setCustomControlsRequested() को boolean वैल्यू के साथ कॉल करें.
कस्टम प्लेबैक कंट्रोल की सुविधा डिफ़ॉल्ट रूप से बंद होती है.
इस सेटिंग के बंद होने पर, आपके वीडियो में एसडीके से रेंडर किए गए इनपुट कंट्रोल दिखेंगे.
अगर विज्ञापन में वीडियो वाला कॉन्टेंट है और कस्टम कंट्रोल चालू हैं, तो आपको विज्ञापन के साथ कस्टम कंट्रोल दिखाने चाहिए. ऐसा इसलिए, क्योंकि विज्ञापन में कोई कंट्रोल नहीं दिखेगा. इसके बाद, कंट्रोल,
यहां दिए गए उदाहरण में, कस्टम प्लेबैक कंट्रोल वाले वीडियो का अनुरोध करने का तरीका बताया गया है.
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.SwipeGestureDirection और boolean के साथ NativeAdOptions.Builder.enableCustomClickGestureDirection() को कॉल करें, ताकि यह बताया जा सके कि टैप को क्लिक के तौर पर अनुमति देनी है या नहीं.
कस्टम क्लिक जेस्चर की सुविधा डिफ़ॉल्ट रूप से बंद होती है.
इस सुविधा को बंद करने पर, आपका ऐप्लिकेशन सामान्य क्लिक व्यवहार के साथ काम करता है.
इस सुविधा के चालू होने पर, आपका ऐप्लिकेशन पसंद के मुताबिक स्वाइप जेस्चर की सुविधा देता है.
यहां दिए गए उदाहरण में, दाईं ओर स्वाइप करने के लिए कस्टम जेस्चर को लागू किया गया है. साथ ही, टैप करने के सामान्य तरीके को बनाए रखा गया है.
Java
Kotlin
स्वाइप जेस्चर इवेंट को मॉनिटर करने की अनुमति
जब स्वाइप जेस्चर क्लिक रिकॉर्ड किया जाता है, तो Google Mobile Ads SDK (Legacy), AdListener पर onAdSwipeGestureClicked() तरीके को शुरू करता है. साथ ही, मौजूदा onAdClicked() तरीके को भी शुरू करता है.
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 रेंडर करता है. विज्ञापन रेंडर करने के लिए, जिन विज्ञापन सोर्स को तीसरे पक्ष के SDK टूल की ज़रूरत होती है वे क्लिक के लिए कस्टम निर्देश की सेटिंग के हिसाब से काम नहीं करते.