নেটিভ বিজ্ঞাপন বিকল্প

প্ল্যাটফর্ম নির্বাচন করুন: Android iOS

নেটিভ বিজ্ঞাপনগুলিতে অনেক উন্নত বৈশিষ্ট্য রয়েছে যা আপনাকে অতিরিক্ত কাস্টমাইজেশন করতে এবং সর্বোত্তম সম্ভাব্য বিজ্ঞাপন অভিজ্ঞতা তৈরি করতে দেয়। এই নির্দেশিকা আপনাকে দেখায় কিভাবে নেটিভ বিজ্ঞাপনের উন্নত বৈশিষ্ট্যগুলি ব্যবহার করতে হয়৷

পূর্বশর্ত

সম্পদ নিয়ন্ত্রণ

নেটিভ বিজ্ঞাপন সম্পদ নিয়ন্ত্রণ কনফিগার করুন।

পছন্দের মিডিয়া আকৃতির অনুপাত নিয়ন্ত্রণ

মিডিয়া অ্যাসপেক্ট রেশিও কন্ট্রোল আপনাকে বিজ্ঞাপন ক্রিয়েটিভের আকৃতির অনুপাতের জন্য একটি পছন্দ নির্দিষ্ট করতে দেয়।

NativeAdOptions.Builder.setMediaAspectRatio() মান সহ NativeAdOptions.MediaAspectRatio () কে কল করুন।

  • সেট করা না থাকলে, প্রত্যাবর্তিত বিজ্ঞাপনের মিডিয়া আকৃতির অনুপাত থাকতে পারে।

  • সেট করা হলে, আপনি পছন্দের আকৃতির অনুপাত উল্লেখ করে ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে সক্ষম হবেন।

নিম্নলিখিত উদাহরণটি SDK-কে একটি নির্দিষ্ট আকৃতির অনুপাত সহ একটি রিটার্ন ইমেজ বা ভিডিও পছন্দ করার নির্দেশ দেয়৷

জাভা

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();

কোটলিন

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

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

আপনার বিজ্ঞাপন ইউনিট ID দিয়ে AD_UNIT_ID প্রতিস্থাপন করুন।

ছবি ডাউনলোড নিয়ন্ত্রণ

ইমেজ ডাউনলোড কন্ট্রোল আপনাকে সিদ্ধান্ত নিতে দেয় যে ইমেজ অ্যাসেট নাকি শুধুমাত্র ইউআরআই SDK দ্বারা ফেরত দেওয়া হবে।

একটি boolean মান সহ NativeAdOptions.Builder.setReturnUrlsForImageAssets() কল করুন।

  • ইমেজ ডাউনলোড নিয়ন্ত্রণ ডিফল্টরূপে নিষ্ক্রিয় করা হয়.

  • অক্ষম করা হলে, Google মোবাইল বিজ্ঞাপন SDK আপনার জন্য ছবি এবং URI উভয়ই পূরণ করে।

  • সক্রিয় করা হলে, SDK এর পরিবর্তে শুধুমাত্র URI-কে পপুলেট করে, যা আপনাকে আপনার বিবেচনার ভিত্তিতে প্রকৃত ছবিগুলি ডাউনলোড করতে দেয়।

নিম্নলিখিত উদাহরণটি SDK কে শুধুমাত্র URI ফেরত দেওয়ার নির্দেশ দেয়৷

জাভা

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();

কোটলিন

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()

ছবি পেলোড নিয়ন্ত্রণ

কিছু বিজ্ঞাপনে শুধুমাত্র একটির পরিবর্তে একাধিক ছবি থাকে। আপনার অ্যাপটি সমস্ত ছবি বা শুধুমাত্র একটি প্রদর্শনের জন্য প্রস্তুত কিনা তা নির্দেশ করতে এই বৈশিষ্ট্যটি ব্যবহার করুন৷

একটি boolean মান সহ NativeAdOptions.Builder.setRequestMultipleImages() কল করুন।

  • ইমেজ পেলোড নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপটি SDK-কে নির্দেশ দেয় যে কোনো একটি সিরিজ আছে এমন সম্পদের জন্য শুধুমাত্র প্রথম ছবি দিতে।

  • সক্রিয় করা হলে, আপনার অ্যাপটি নির্দেশ করে যে এটি যেকোনও সম্পত্তির জন্য সমস্ত ছবি প্রদর্শনের জন্য প্রস্তুত যেগুলির একাধিক রয়েছে৷

নিম্নলিখিত উদাহরণটি SDK-কে একাধিক চিত্র সম্পদ ফেরত দেওয়ার নির্দেশ দেয়৷

জাভা

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

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

কোটলিন

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

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

অ্যাডচয়েস প্লেসমেন্ট

AdChoices আইকন প্রদর্শন কাস্টমাইজ করুন।

AdChoices অবস্থান নিয়ন্ত্রণ

AdChoices পজিশন কন্ট্রোল আপনাকে AdChoices আইকন রেন্ডার করতে কোন কোণে বেছে নিতে দেয়।

NativeAdOptions.Builder.setAdChoicesPlacement() NativeAdOption.AdChoicesPlacement মান সহ কল করুন।

  • যদি সেট না থাকে, তাহলে AdChoices আইকনের অবস্থান উপরের ডানদিকে সেট করা হয়।

  • যদি সেট করা থাকে, AdChoices অনুরোধ অনুযায়ী কাস্টম অবস্থানে স্থাপন করা হয়।

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি কাস্টম AdChoices ছবির অবস্থান সেট করতে হয়।

জাভা

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

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

কোটলিন

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 পজিশন কন্ট্রোল থেকে আলাদা, যা শুধুমাত্র চারটি কোণের একটির স্পেসিফিকেশনের অনুমতি দেয়।

একটি AdChoicesView মান সহ NativeAdView.setAdChoicesView() কল করুন।

নিম্নলিখিত উদাহরণ প্রদর্শন করে কিভাবে AdChoicesView ভিতরে রেন্ডার করা AdChoices আইকন সহ একটি কাস্টম AdChoices ভিউ সেট করতে হয়।

জাভা

NativeAdView nativeAdView = new NativeAdView(context);
AdChoicesView adChoicesView = new AdChoicesView(context);
nativeAdView.setAdChoicesView(adChoicesView);

কোটলিন

val nativeAdView = NativeAdView(context)
val adChoicesView = AdChoicesView(context)
nativeAdView.adChoicesView = adChoicesView

ভিডিও নিয়ন্ত্রণ

ভিডিও সম্পদ আচরণ কনফিগার করুন.

নিঃশব্দ আচরণ শুরু করুন

স্টার্ট মিউট করা আচরণ আপনাকে একটি ভিডিওর শুরুর অডিও নিষ্ক্রিয় বা সক্ষম করতে দেয়৷

একটি boolean মান সহ VideoOptions.Builder.setStartMuted() কল করুন।

  • সূচনা নিঃশব্দ আচরণ ডিফল্টরূপে সক্রিয় করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপ অনুরোধ করে ভিডিওটি অডিও দিয়ে শুরু হওয়া উচিত।

  • সক্রিয় করা হলে, আপনার অ্যাপ অনুরোধ করে যে ভিডিওটি অডিও মিউট দিয়ে শুরু হওয়া উচিত।

নিচের উদাহরণটি দেখায় কিভাবে আন-মিউট অডিও দিয়ে ভিডিও শুরু করতে হয়।

জাভা

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();

কোটলিন

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()

কাস্টম প্লেব্যাক নিয়ন্ত্রণ

এটি আপনাকে ভিডিও চালাতে, বিরতি দিতে বা নিঃশব্দ করার জন্য কাস্টম ভিডিও ইনপুট নিয়ন্ত্রণের অনুরোধ করতে দেয়৷

একটি boolean মান সহ VideoOptions.Builder.setCustomControlsRequested() কল করুন।

  • কাস্টম প্লেব্যাক নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়।

  • অক্ষম করা হলে, আপনার ভিডিও SDK রেন্ডার করা ইনপুট নিয়ন্ত্রণগুলি দেখাবে৷

যদি বিজ্ঞাপনটিতে ভিডিও সামগ্রী থাকে এবং কাস্টম নিয়ন্ত্রণ সক্ষম করা থাকে, তাহলে আপনাকে বিজ্ঞাপনের সাথে আপনার কাস্টম নিয়ন্ত্রণগুলি প্রদর্শন করা উচিত, কারণ বিজ্ঞাপনটি নিজেই কোনো নিয়ন্ত্রণ দেখাবে না। নিয়ন্ত্রণ তারপর প্রাসঙ্গিক পদ্ধতি কল করতে পারেন

VideoController

নিম্নোক্ত উদাহরণটি দেখায় কিভাবে কাস্টম প্লেব্যাক নিয়ন্ত্রণ সহ একটি ভিডিওর অনুরোধ করুন৷

জাভা

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();

কোটলিন

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()

কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করুন

কারণ অনুরোধের সময় এটি জানা যায় না যে প্রত্যাবর্তিত বিজ্ঞাপনটি কাস্টম ভিডিও নিয়ন্ত্রণের অনুমতি দেবে কিনা, আপনাকে অবশ্যই এটিতে কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করতে হবে৷

জাভা

MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
  VideoController videoController = mediaContent.getVideoController();
  boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}

কোটলিন

val mediaContent = nativeAd.mediaContent
if (mediaContent != null) {
  val videoController = mediaContent.videoController
  val canShowCustomControls = videoController.isCustomControlsEnabled
}

কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন

নিম্নলিখিত সেরা অনুশীলনগুলি ব্যবহার করে কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন:

  1. কাস্টম কন্ট্রোল ভিউকে নেটিভ অ্যাড ভিউয়ের চাইল্ড হিসেবে রেন্ডার করুন। এই পদ্ধতিটি খোলা পরিমাপ দর্শনযোগ্যতা গণনাকে কাস্টম নিয়ন্ত্রণগুলিকে একটি বন্ধুত্বপূর্ণ বাধা হিসাবে বিবেচনা করতে দেয়।
  2. সম্পূর্ণ মিডিয়া ভিউতে একটি অদৃশ্য ওভারলে রেন্ডার করা এড়িয়ে চলুন। ওভারলে মিডিয়া ভিউতে ক্লিক ব্লক করে, নেটিভ বিজ্ঞাপনের কর্মক্ষমতাকে নেতিবাচকভাবে প্রভাবিত করে। পরিবর্তে, একটি ছোট ওভারলে তৈরি করুন যা নিয়ন্ত্রণগুলি ফিট করার জন্য যথেষ্ট বড়।

কাস্টম ক্লিক অঙ্গভঙ্গি

কাস্টম ক্লিক অঙ্গভঙ্গি হল একটি নেটিভ বিজ্ঞাপন বৈশিষ্ট্য যা বিজ্ঞাপনের ভিউগুলিতে সোয়াইপগুলিকে বিজ্ঞাপন ক্লিক হিসাবে নিবন্ধিত হতে সক্ষম করে৷ এটি এমন অ্যাপগুলির সাথে কাজ করার জন্য ডিজাইন করা হয়েছে যা সামগ্রী নেভিগেশনের জন্য সোয়াইপ অঙ্গভঙ্গি ব্যবহার করে। এই নির্দেশিকাটি দেখায় কিভাবে আপনার নেটিভ বিজ্ঞাপনে কাস্টম ক্লিক ইঙ্গিত সক্ষম করতে হয়।

NativeAdOptions.Builder.enableCustomClickGestureDirection() কে NativeAdOptions.SwipeGestureDirection এবং একটি boolean সহ কল করুন যাতে আপনি ট্যাপগুলিকে ক্লিক হিসাবে অনুমোদিত করতে চান কিনা তা নির্দেশ করতে পারেন।

নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।

  • কাস্টম ক্লিক অঙ্গভঙ্গি ডিফল্টরূপে অক্ষম করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপ স্বাভাবিক ক্লিকিং আচরণকে সমর্থন করবে।

  • সক্রিয় করা হলে, আপনার অ্যাপ কাস্টম সোয়াইপ অঙ্গভঙ্গি সমর্থন করবে।

নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।

জাভা

NativeAdOptions adOptions =
    new NativeAdOptions.Builder()
        .enableCustomClickGestureDirection(
            NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT, /* tapsAllowed= */ true)
        .build();

// ca-app-pub-3940256099942544/2247696110 is a sample ad unit ID that has custom click
// gestures enabled.
AdLoader.Builder builder =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(adOptions);

কোটলিন

val adOptions =
  NativeAdOptions.Builder()
    .enableCustomClickGestureDirection(NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT, true)
    .build()

val builder = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(adOptions)

সোয়াইপ জেসচার ইভেন্টের জন্য শুনুন

যখন একটি সোয়াইপ জেসচার ক্লিক রেকর্ড করা হয়, তখন Google মোবাইল বিজ্ঞাপন SDK বিদ্যমান onAdClicked() পদ্ধতির পাশাপাশি AdListeneronAdSwipeGestureClicked() পদ্ধতি চালু করে।

জাভা

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();

কোটলিন

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 মোবাইল বিজ্ঞাপন SDK রেন্ডার করে। রেন্ডারিংয়ের জন্য যে বিজ্ঞাপন উত্সগুলির জন্য তৃতীয়-পক্ষের SDK প্রয়োজন , কাস্টম ক্লিক দিকনির্দেশ সেটিং-এ সাড়া দেয় না৷

,
প্ল্যাটফর্ম নির্বাচন করুন: Android iOS

নেটিভ বিজ্ঞাপনগুলিতে অনেক উন্নত বৈশিষ্ট্য রয়েছে যা আপনাকে অতিরিক্ত কাস্টমাইজেশন করতে এবং সর্বোত্তম সম্ভাব্য বিজ্ঞাপন অভিজ্ঞতা তৈরি করতে দেয়। এই নির্দেশিকা আপনাকে দেখায় কিভাবে নেটিভ বিজ্ঞাপনের উন্নত বৈশিষ্ট্যগুলি ব্যবহার করতে হয়৷

পূর্বশর্ত

সম্পদ নিয়ন্ত্রণ

নেটিভ বিজ্ঞাপন সম্পদ নিয়ন্ত্রণ কনফিগার করুন।

পছন্দের মিডিয়া আকৃতির অনুপাত নিয়ন্ত্রণ

মিডিয়া অ্যাসপেক্ট রেশিও কন্ট্রোল আপনাকে বিজ্ঞাপন ক্রিয়েটিভের আকৃতির অনুপাতের জন্য একটি পছন্দ নির্দিষ্ট করতে দেয়।

NativeAdOptions.Builder.setMediaAspectRatio() মান সহ NativeAdOptions.MediaAspectRatio () কে কল করুন।

  • সেট করা না থাকলে, প্রত্যাবর্তিত বিজ্ঞাপনের মিডিয়া আকৃতির অনুপাত থাকতে পারে।

  • সেট করা হলে, আপনি পছন্দের আকৃতির অনুপাত উল্লেখ করে ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে সক্ষম হবেন।

নিম্নলিখিত উদাহরণটি SDK-কে একটি নির্দিষ্ট আকৃতির অনুপাত সহ একটি রিটার্ন ইমেজ বা ভিডিও পছন্দ করার নির্দেশ দেয়৷

জাভা

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();

কোটলিন

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

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

আপনার বিজ্ঞাপন ইউনিট ID দিয়ে AD_UNIT_ID প্রতিস্থাপন করুন।

ছবি ডাউনলোড নিয়ন্ত্রণ

ইমেজ ডাউনলোড কন্ট্রোল আপনাকে সিদ্ধান্ত নিতে দেয় যে ইমেজ অ্যাসেট নাকি শুধুমাত্র ইউআরআই SDK দ্বারা ফেরত দেওয়া হবে।

একটি boolean মান সহ NativeAdOptions.Builder.setReturnUrlsForImageAssets() কল করুন।

  • ইমেজ ডাউনলোড নিয়ন্ত্রণ ডিফল্টরূপে নিষ্ক্রিয় করা হয়.

  • অক্ষম করা হলে, Google মোবাইল বিজ্ঞাপন SDK আপনার জন্য ছবি এবং URI উভয়ই পূরণ করে।

  • সক্রিয় করা হলে, SDK এর পরিবর্তে শুধুমাত্র URI-কে পপুলেট করে, যা আপনাকে আপনার বিবেচনার ভিত্তিতে প্রকৃত ছবিগুলি ডাউনলোড করতে দেয়।

নিম্নলিখিত উদাহরণটি SDK কে শুধুমাত্র URI ফেরত দেওয়ার নির্দেশ দেয়৷

জাভা

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();

কোটলিন

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()

ছবি পেলোড নিয়ন্ত্রণ

কিছু বিজ্ঞাপনে শুধুমাত্র একটির পরিবর্তে একাধিক ছবি থাকে। আপনার অ্যাপটি সমস্ত ছবি বা শুধুমাত্র একটি প্রদর্শনের জন্য প্রস্তুত কিনা তা নির্দেশ করতে এই বৈশিষ্ট্যটি ব্যবহার করুন৷

একটি boolean মান সহ NativeAdOptions.Builder.setRequestMultipleImages() কল করুন।

  • ইমেজ পেলোড নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপটি SDK-কে নির্দেশ দেয় যে কোনো একটি সিরিজ আছে এমন সম্পদের জন্য শুধুমাত্র প্রথম ছবি দিতে।

  • সক্রিয় করা হলে, আপনার অ্যাপটি নির্দেশ করে যে এটি যেকোনও সম্পত্তির জন্য সমস্ত ছবি প্রদর্শনের জন্য প্রস্তুত যেগুলির একাধিক রয়েছে৷

নিম্নলিখিত উদাহরণটি SDK-কে একাধিক চিত্র সম্পদ ফেরত দেওয়ার নির্দেশ দেয়৷

জাভা

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

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

কোটলিন

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

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

অ্যাডচয়েস প্লেসমেন্ট

AdChoices আইকন প্রদর্শন কাস্টমাইজ করুন।

AdChoices অবস্থান নিয়ন্ত্রণ

AdChoices পজিশন কন্ট্রোল আপনাকে AdChoices আইকন রেন্ডার করতে কোন কোণে বেছে নিতে দেয়।

NativeAdOptions.Builder.setAdChoicesPlacement() NativeAdOption.AdChoicesPlacement মান সহ কল করুন।

  • যদি সেট না থাকে, তাহলে AdChoices আইকনের অবস্থান উপরের ডানদিকে সেট করা হয়।

  • যদি সেট করা থাকে, AdChoices অনুরোধ অনুযায়ী কাস্টম অবস্থানে স্থাপন করা হয়।

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি কাস্টম AdChoices ছবির অবস্থান সেট করতে হয়।

জাভা

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

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

কোটলিন

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 পজিশন কন্ট্রোল থেকে আলাদা, যা শুধুমাত্র চারটি কোণের একটির স্পেসিফিকেশনের অনুমতি দেয়।

একটি AdChoicesView মান সহ NativeAdView.setAdChoicesView() কল করুন।

নিম্নলিখিত উদাহরণ প্রদর্শন করে কিভাবে AdChoicesView ভিতরে রেন্ডার করা AdChoices আইকন সহ একটি কাস্টম AdChoices ভিউ সেট করতে হয়।

জাভা

NativeAdView nativeAdView = new NativeAdView(context);
AdChoicesView adChoicesView = new AdChoicesView(context);
nativeAdView.setAdChoicesView(adChoicesView);

কোটলিন

val nativeAdView = NativeAdView(context)
val adChoicesView = AdChoicesView(context)
nativeAdView.adChoicesView = adChoicesView

ভিডিও নিয়ন্ত্রণ

ভিডিও সম্পদ আচরণ কনফিগার করুন.

নিঃশব্দ আচরণ শুরু করুন

স্টার্ট মিউট করা আচরণ আপনাকে একটি ভিডিওর শুরুর অডিও নিষ্ক্রিয় বা সক্ষম করতে দেয়৷

একটি boolean মান সহ VideoOptions.Builder.setStartMuted() কল করুন।

  • সূচনা নিঃশব্দ আচরণ ডিফল্টরূপে সক্রিয় করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপ অনুরোধ করে ভিডিওটি অডিও দিয়ে শুরু হওয়া উচিত।

  • সক্রিয় করা হলে, আপনার অ্যাপ অনুরোধ করে যে ভিডিওটি অডিও মিউট দিয়ে শুরু হওয়া উচিত।

নিচের উদাহরণটি দেখায় কিভাবে আন-মিউট অডিও দিয়ে ভিডিও শুরু করতে হয়।

জাভা

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();

কোটলিন

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()

কাস্টম প্লেব্যাক নিয়ন্ত্রণ

এটি আপনাকে ভিডিও চালাতে, বিরতি দিতে বা নিঃশব্দ করার জন্য কাস্টম ভিডিও ইনপুট নিয়ন্ত্রণের অনুরোধ করতে দেয়৷

একটি boolean মান সহ VideoOptions.Builder.setCustomControlsRequested() কল করুন।

  • কাস্টম প্লেব্যাক নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়।

  • অক্ষম করা হলে, আপনার ভিডিও SDK রেন্ডার করা ইনপুট নিয়ন্ত্রণগুলি দেখাবে৷

যদি বিজ্ঞাপনটিতে ভিডিও সামগ্রী থাকে এবং কাস্টম নিয়ন্ত্রণ সক্ষম করা থাকে, তাহলে আপনাকে বিজ্ঞাপনের সাথে আপনার কাস্টম নিয়ন্ত্রণগুলি প্রদর্শন করা উচিত, কারণ বিজ্ঞাপনটি নিজেই কোনো নিয়ন্ত্রণ দেখাবে না। নিয়ন্ত্রণ তারপর প্রাসঙ্গিক পদ্ধতি কল করতে পারেন

VideoController

নিম্নোক্ত উদাহরণটি দেখায় কিভাবে কাস্টম প্লেব্যাক নিয়ন্ত্রণ সহ একটি ভিডিওর অনুরোধ করুন৷

জাভা

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();

কোটলিন

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()

কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করুন

কারণ অনুরোধের সময় এটি জানা যায় না যে প্রত্যাবর্তিত বিজ্ঞাপনটি কাস্টম ভিডিও নিয়ন্ত্রণের অনুমতি দেবে কিনা, আপনাকে অবশ্যই এটিতে কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করতে হবে৷

জাভা

MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
  VideoController videoController = mediaContent.getVideoController();
  boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}

কোটলিন

val mediaContent = nativeAd.mediaContent
if (mediaContent != null) {
  val videoController = mediaContent.videoController
  val canShowCustomControls = videoController.isCustomControlsEnabled
}

কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন

নিম্নলিখিত সেরা অনুশীলনগুলি ব্যবহার করে কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন:

  1. কাস্টম কন্ট্রোল ভিউকে নেটিভ অ্যাড ভিউয়ের চাইল্ড হিসেবে রেন্ডার করুন। এই পদ্ধতিটি খোলা পরিমাপ দর্শনযোগ্যতা গণনাকে কাস্টম নিয়ন্ত্রণগুলিকে একটি বন্ধুত্বপূর্ণ বাধা হিসাবে বিবেচনা করতে দেয়।
  2. সম্পূর্ণ মিডিয়া ভিউতে একটি অদৃশ্য ওভারলে রেন্ডার করা এড়িয়ে চলুন। ওভারলে মিডিয়া ভিউতে ক্লিক ব্লক করে, নেটিভ বিজ্ঞাপনের কর্মক্ষমতাকে নেতিবাচকভাবে প্রভাবিত করে। পরিবর্তে, একটি ছোট ওভারলে তৈরি করুন যা নিয়ন্ত্রণগুলি ফিট করার জন্য যথেষ্ট বড়।

কাস্টম ক্লিক অঙ্গভঙ্গি

কাস্টম ক্লিক অঙ্গভঙ্গি হল একটি নেটিভ বিজ্ঞাপন বৈশিষ্ট্য যা বিজ্ঞাপনের ভিউগুলিতে সোয়াইপগুলিকে বিজ্ঞাপন ক্লিক হিসাবে নিবন্ধিত হতে সক্ষম করে৷ এটি এমন অ্যাপগুলির সাথে কাজ করার জন্য ডিজাইন করা হয়েছে যা সামগ্রী নেভিগেশনের জন্য সোয়াইপ অঙ্গভঙ্গি ব্যবহার করে। এই নির্দেশিকাটি দেখায় কিভাবে আপনার নেটিভ বিজ্ঞাপনে কাস্টম ক্লিক ইঙ্গিত সক্ষম করতে হয়।

NativeAdOptions.Builder.enableCustomClickGestureDirection() কে NativeAdOptions.SwipeGestureDirection এবং একটি boolean সহ কল করুন যাতে আপনি ট্যাপগুলিকে ক্লিক হিসাবে অনুমোদিত করতে চান কিনা তা নির্দেশ করতে পারেন।

নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।

  • কাস্টম ক্লিক অঙ্গভঙ্গি ডিফল্টরূপে অক্ষম করা হয়.

  • অক্ষম করা হলে, আপনার অ্যাপ স্বাভাবিক ক্লিকিং আচরণকে সমর্থন করবে।

  • সক্রিয় করা হলে, আপনার অ্যাপ কাস্টম সোয়াইপ অঙ্গভঙ্গি সমর্থন করবে।

নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।

জাভা

NativeAdOptions adOptions =
    new NativeAdOptions.Builder()
        .enableCustomClickGestureDirection(
            NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT, /* tapsAllowed= */ true)
        .build();

// ca-app-pub-3940256099942544/2247696110 is a sample ad unit ID that has custom click
// gestures enabled.
AdLoader.Builder builder =
    new AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(adOptions);

কোটলিন

val adOptions =
  NativeAdOptions.Builder()
    .enableCustomClickGestureDirection(NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT, true)
    .build()

val builder = AdLoader.Builder(context, "AD_UNIT_ID").withNativeAdOptions(adOptions)

সোয়াইপ জেসচার ইভেন্টের জন্য শুনুন

যখন একটি সোয়াইপ জেসচার ক্লিক রেকর্ড করা হয়, তখন Google মোবাইল বিজ্ঞাপন SDK বিদ্যমান onAdClicked() পদ্ধতির পাশাপাশি AdListeneronAdSwipeGestureClicked() পদ্ধতি চালু করে।

জাভা

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();

কোটলিন

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 মোবাইল বিজ্ঞাপন SDK রেন্ডার করে। রেন্ডারিংয়ের জন্য যে বিজ্ঞাপন উত্সগুলির জন্য তৃতীয়-পক্ষের SDK প্রয়োজন , কাস্টম ক্লিক দিকনির্দেশ সেটিং-এ সাড়া দেয় না৷