ऐडवांस नेटिव सुविधाएं सेट करना

प्लैटफ़ॉर्म चुनें: Android नई सुविधा Android iOS

नेटिव विज्ञापनों में कई ऐडवांस सुविधाएं होती हैं. इनकी मदद से, विज्ञापन को अपनी पसंद के मुताबिक बनाया जा सकता है और लोगों को बेहतर विज्ञापन अनुभव दिया जा सकता है. इस गाइड में, नेटिव विज्ञापनों की ऐडवांस सुविधाओं का इस्तेमाल करने का तरीका बताया गया है.

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

ऐसेट कंट्रोल

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

पसंदीदा मीडिया आसपेक्ट रेशियो (चौड़ाई-ऊंचाई का अनुपात) के कंट्रोल

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

NativeAdOptions.Builder.setMediaAspectRatio() को NativeAdOptions.MediaAspectRatio वैल्यू के साथ कॉल करें.

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

  • अगर यह सेटिंग सेट की जाती है, तो पसंदीदा आसपेक्ट रेशियो (चौड़ाई-ऊंचाई का अनुपात) तय करके, लोगों के अनुभव को बेहतर बनाया जा सकता है.

यहां दिए गए उदाहरण में, एसडीके को निर्देश दिया गया है कि वह किसी खास आसपेक्ट रेशियो (चौड़ाई-ऊंचाई का अनुपात) वाली इमेज या वीडियो को प्राथमिकता दे.

Java

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder()
        .setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
        .build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build();

Kotlin

val nativeAdOptions =
  NativeAdOptions.Builder()
    .setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
    .build()

val loader = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build()

AD_UNIT_ID को अपनी विज्ञापन यूनिट के आईडी से बदलें.

इमेज डाउनलोड करने के कंट्रोल

इमेज डाउनलोड करने के कंट्रोल की मदद से, यह तय किया जा सकता है कि एसडीके, इमेज ऐसेट या सिर्फ़ यूआरआई दिखाए.

NativeAdOptions.Builder.setReturnUrlsForImageAssets() को boolean वैल्यू के साथ कॉल करें.

  • इमेज डाउनलोड करने के कंट्रोल, डिफ़ॉल्ट रूप से बंद होते हैं.

  • अगर ये कंट्रोल बंद हैं, तो Google Mobile Ads SDK आपके लिए इमेज और यूआरआई, दोनों को पॉप्युलेट करता है.

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

यहां दिए गए उदाहरण में, एसडीके को निर्देश दिया गया है कि वह सिर्फ़ यूआरआई दिखाए.

Java

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder().setReturnUrlsForImageAssets(true).build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID")
        .withNativeAdOptions(nativeAdOptions)
        .forNativeAd(
            nativeAd -> {
              List<Uri> imageUris = new ArrayList<>();
              for (Image image : nativeAd.getImages()) {
                imageUris.add(image.getUri());
              }
            })
        .build();

Kotlin

val nativeAdOptions = NativeAdOptions.Builder().setReturnUrlsForImageAssets(true).build()

val loader =
  AdLoader.Builder(context, "AD_UNIT_ID")
    .withNativeAdOptions(nativeAdOptions)
    .forNativeAd { nativeAd ->
      val imageUris = nativeAd.images.mapNotNull { it.uri }
    }
    .build()

इमेज पेलोड कंट्रोल

कुछ विज्ञापनों में सिर्फ़ एक इमेज के बजाय, कई इमेज होती हैं. इस सुविधा का इस्तेमाल करके, यह बताया जा सकता है कि आपका ऐप्लिकेशन सभी इमेज या सिर्फ़ एक इमेज दिखाने के लिए तैयार है या नहीं.

कॉल करें NativeAdOptions.Builder.setRequestMultipleImages() के साथ एक boolean वैल्यू.

  • इमेज पेलोड कंट्रोल, डिफ़ॉल्ट रूप से बंद होते हैं.

  • अगर ये कंट्रोल बंद हैं, तो आपका ऐप्लिकेशन, एसडीके को निर्देश देता है कि वह ऐसी किसी भी ऐसेट के लिए सिर्फ़ पहली इमेज दिखाए जिसमें कई इमेज शामिल हों.

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

यहां दिए गए उदाहरण में, एसडीके को निर्देश दिया गया है कि वह एक से ज़्यादा इमेज ऐसेट दिखाए.

Java

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder().setRequestMultipleImages(true).build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build();

Kotlin

val nativeAdOptions = NativeAdOptions.Builder().setRequestMultipleImages(true).build()

val loader = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build()

AdChoices प्लेसमेंट

इस सेक्शन में, AdChoices ओवरले की पोज़िशन सेट करने का तरीका बताया गया है. आपके पास इसकी पोज़िशन को चारों कोनों में से किसी एक पर सेट करने या इसे कस्टम व्यू में रेंडर करने का विकल्प होता है.

AdChoices की पोज़िशन के कंट्रोल

AdChoices की पोज़िशन के कंट्रोल की मदद से, यह चुना जा सकता है कि AdChoices आइकॉन को किस कोने में रेंडर करना है.

NativeAdOptions.Builder.setAdChoicesPlacement() को NativeAdOption.AdChoicesPlacement वैल्यू के साथ कॉल करें.

  • अगर यह सेटिंग सेट नहीं की जाती है, तो AdChoices आइकॉन की पोज़िशन सबसे ऊपर दाएं कोने पर सेट हो जाती है.

  • अगर यह सेटिंग सेट की जाती है, तो AdChoices को अनुरोध के मुताबिक, कस्टम पोज़िशन पर रखा जाता है.

यहां दिए गए उदाहरण में, AdChoices आइकॉन की पोज़िशन को अपनी पसंद के मुताबिक सेट करने का तरीका बताया गया है.

Java

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder()
        .setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
        .build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build();

Kotlin

val nativeAdOptions =
  NativeAdOptions.Builder()
    .setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
    .build()

val loader = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build()

AdChoices का कस्टम व्यू

AdChoices के कस्टम व्यू की सुविधा की मदद से, AdChoices आइकॉन को किसी कस्टम जगह पर रखा जा सकता है. यह AdChoices की पोज़िशन के कंट्रोल से अलग है. AdChoices की पोज़िशन के कंट्रोल की मदद से, सिर्फ़ चारों कोनों में से किसी एक को चुना जा सकता है.

NativeAdView.setAdChoicesView() को AdChoicesView वैल्यू के साथ कॉल करें.

यहां दिए गए उदाहरण में, 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

VideoOptions videoOptions = new VideoOptions.Builder().setStartMuted(false).build();

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder().setVideoOptions(videoOptions).build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build();

Kotlin

val videoOptions = VideoOptions.Builder().setStartMuted(false).build()

val nativeAdOptions = NativeAdOptions.Builder().setVideoOptions(videoOptions).build()

val loader = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build()

कस्टम प्लेबैक कंट्रोल

इसकी मदद से, वीडियो चलाने, रोकने या म्यूट करने के लिए, कस्टम वीडियो इनपुट कंट्रोल का अनुरोध किया जा सकता है.

VideoOptions.Builder.setCustomControlsRequested() को boolean वैल्यू के साथ कॉल करें.

  • कस्टम प्लेबैक कंट्रोल, डिफ़ॉल्ट रूप से बंद होते हैं.

  • अगर ये कंट्रोल बंद हैं, तो आपके वीडियो में एसडीके से रेंडर किए गए इनपुट कंट्रोल दिखेंगे.

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

VideoControllerपर काम के तरीके कॉल कर सकते हैं.

यहां दिए गए उदाहरण में, कस्टम प्लेबैक कंट्रोल वाले वीडियो का अनुरोध करने का तरीका बताया गया है.

Java

VideoOptions videoOptions = new VideoOptions.Builder().setCustomControlsRequested(true).build();

NativeAdOptions nativeAdOptions =
    new NativeAdOptions.Builder().setVideoOptions(videoOptions).build();

AdLoader loader =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build();

Kotlin

val videoOptions = VideoOptions.Builder().setCustomControlsRequested(true).build()

val nativeAdOptions = NativeAdOptions.Builder().setVideoOptions(videoOptions).build()

val loader = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(nativeAdOptions).build()

देखें कि कस्टम कंट्रोल चालू हैं या नहीं

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

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
}

कस्टम वीडियो कंट्रोल रेंडर करना

कस्टम वीडियो कंट्रोल रेंडर करने के लिए, इन सबसे सही तरीकों का इस्तेमाल करें:

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