নেটিভ বিজ্ঞাপনগুলিতে অনেক উন্নত বৈশিষ্ট্য রয়েছে যা আপনাকে অতিরিক্ত কাস্টমাইজেশন করতে এবং সর্বোত্তম সম্ভাব্য বিজ্ঞাপন অভিজ্ঞতা তৈরি করতে দেয়। এই নির্দেশিকা আপনাকে দেখায় কিভাবে নেটিভ বিজ্ঞাপনের উন্নত বৈশিষ্ট্যগুলি ব্যবহার করতে হয়৷
পূর্বশর্ত
- নেটিভ বিজ্ঞাপন বিন্যাস একত্রিত করুন।
সম্পদ নিয়ন্ত্রণ
এই বিভাগে আপনার নেটিভ বিজ্ঞাপনগুলিতে সৃজনশীল সম্পদগুলি কীভাবে কাস্টমাইজ করা যায় তার বিশদ বিবরণ রয়েছে৷ আপনার কাছে মিডিয়া সম্পদের জন্য একটি পছন্দের আকৃতির অনুপাত এবং ছবি সম্পদগুলি কীভাবে ডাউনলোড এবং প্রদর্শিত হয় তা নির্দিষ্ট করার বিকল্প রয়েছে৷
পছন্দের মিডিয়া আকৃতির অনুপাত নিয়ন্ত্রণ
মিডিয়া অ্যাসপেক্ট রেশিও কন্ট্রোল আপনাকে বিজ্ঞাপন ক্রিয়েটিভের আকৃতির অনুপাতের জন্য একটি পছন্দ নির্দিষ্ট করতে দেয়।
NativeAdRequest.Builder.setMediaAspectRatio()
NativeAd.NativeMediaAspectRatio
মান সহ কল করুন।
সেট করা না থাকলে, প্রত্যাবর্তিত বিজ্ঞাপনের মিডিয়া আকৃতির অনুপাত থাকতে পারে।
সেট করা হলে, আপনি পছন্দের আকৃতির অনুপাত উল্লেখ করে ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে সক্ষম হবেন।
নিম্নলিখিত উদাহরণটি SDK-কে একটি নির্দিষ্ট আকৃতির অনুপাত সহ একটি রিটার্ন ইমেজ বা ভিডিও পছন্দ করার নির্দেশ দেয়৷
কোটলিন
val adRequest = NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.build()
জাভা
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.build();
ছবি ডাউনলোড নিয়ন্ত্রণ
ইমেজ ডাউনলোড কন্ট্রোল আপনাকে সিদ্ধান্ত নিতে দেয় যে ইমেজ অ্যাসেট নাকি শুধুমাত্র ইউআরআই SDK দ্বারা ফেরত দেওয়া হবে।
NativeAdRequest.Builder.disableImageDownloading()
কল করুন।
ইমেজ ডাউনলোড নিয়ন্ত্রণ ডিফল্টরূপে নিষ্ক্রিয় করা হয়.
অক্ষম করা হলে, Google মোবাইল বিজ্ঞাপন SDK (বিটা) আপনার জন্য ছবি এবং URI উভয়ই পূরণ করে।
সক্রিয় করা হলে, SDK এর পরিবর্তে শুধুমাত্র URI-কে পপুলেট করে, যা আপনাকে আপনার বিবেচনার ভিত্তিতে প্রকৃত ছবিগুলি ডাউনলোড করতে দেয়।
নিম্নলিখিত উদাহরণটি SDK কে শুধুমাত্র URI ফেরত দেওয়ার নির্দেশ দেয়৷
কোটলিন
val adRequest = NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.disableImageDownloading()
.build()
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Get the image uri.
val imageUri = nativeAd.image?.uri
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adLoaderCallback);
জাভা
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.disableImageDownloading()
.build();
NativeAdLoaderCallback adLoaderCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Get the image uri.
Uri imageUri = nativeAd.getImage().getUri();
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adLoaderCallback);
ছবি পেলোড নিয়ন্ত্রণ
কিছু বিজ্ঞাপনে শুধুমাত্র একটির পরিবর্তে একাধিক ছবি থাকে। আপনার অ্যাপটি সমস্ত ছবি বা শুধুমাত্র একটি প্রদর্শনের জন্য প্রস্তুত কিনা তা নির্দেশ করতে এই বৈশিষ্ট্যটি ব্যবহার করুন৷
ইমেজ পেলোড নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়.
অক্ষম করা হলে, আপনার অ্যাপটি SDK-কে নির্দেশ দেয় যে কোনো একটি সিরিজ আছে এমন সম্পদের জন্য শুধুমাত্র প্রথম ছবি দিতে।
সক্রিয় করা হলে, আপনার অ্যাপটি নির্দেশ করে যে এটি যেকোনও সম্পত্তির জন্য সমস্ত ছবি প্রদর্শনের জন্য প্রস্তুত যেগুলির একাধিক রয়েছে৷
নিম্নলিখিত উদাহরণটি SDK-কে একাধিক চিত্র সম্পদ ফেরত দেওয়ার নির্দেশ দেয়৷
অ্যাডচয়েস প্লেসমেন্ট
এই বিভাগে AdChoices ওভারলে কিভাবে অবস্থান করতে হয় তার বিশদ বিবরণ। আপনার কাছে এটির স্থান নির্ধারণের চারটি কোণার একটিতে সেট করার বা একটি কাস্টম ভিউয়ের মধ্যে রেন্ডার করার বিকল্প রয়েছে৷
AdChoices অবস্থান নিয়ন্ত্রণ
AdChoices পজিশন কন্ট্রোল আপনাকে AdChoices আইকন রেন্ডার করতে কোন কোণে বেছে নিতে দেয়।
NativeAdRequest.Builder.setAdChoicesPlacement()
NativeAdRequest.AdChoicesPlacement
মান সহ কল করুন।
যদি সেট করা না থাকে, AdChoices আইকন অবস্থান উপরের ডানদিকে সেট করা হয়।
যদি সেট করা থাকে, AdChoices অনুরোধ অনুযায়ী কাস্টম অবস্থানে স্থাপন করা হয়।
নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি কাস্টম AdChoices ছবির অবস্থান সেট করতে হয়।
কোটলিন
val adRequest = NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
.build()
জাভা
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
.build();
AdChoices কাস্টম ভিউ
AdChoices কাস্টম ভিউ বৈশিষ্ট্য আপনাকে একটি কাস্টম অবস্থানে AdChoices আইকন স্থাপন করতে দেয়। এটি AdChoices পজিশন কন্ট্রোল থেকে আলাদা, যা শুধুমাত্র চারটি কোণের একটির স্পেসিফিকেশনের অনুমতি দেয়।
একটি AdChoicesView
মান সহ NativeAdView.setAdChoicesView()
কল করুন।
নিম্নলিখিত উদাহরণ প্রদর্শন করে কিভাবে AdChoicesView
ভিতরে রেন্ডার করা AdChoices আইকন সহ একটি কাস্টম AdChoices ভিউ সেট করতে হয়।
কোটলিন
override fun onNativeAdLoaded(nativeAd: NativeAd) {
val nativeAdView = NativeAdView(applicationContext)
val adChoicesView = AdChoicesView(this)
nativeAdView.adChoicesView = adChoicesView
}
জাভা
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
AdChoicesView adChoicesView = new AdChoicesView(this);
nativeAdView.setAdChoicesView(adChoicesView);
}
ভিডিও নিয়ন্ত্রণ
এই বিভাগে ভিডিও বিজ্ঞাপনের জন্য প্লেব্যাকের অভিজ্ঞতা কীভাবে কাস্টমাইজ করা যায় তার বিশদ বিবরণ রয়েছে৷ আপনার কাছে প্রাথমিক নিঃশব্দ অবস্থা সেট করার এবং কাস্টম প্লেব্যাক নিয়ন্ত্রণগুলি প্রয়োগ করার বিকল্প রয়েছে৷
নিঃশব্দ আচরণ শুরু করুন
স্টার্ট মিউট করা আচরণ আপনাকে একটি ভিডিওর শুরুর অডিও নিষ্ক্রিয় বা সক্ষম করতে দেয়৷
একটি boolean
মান সহ VideoOptions.Builder.setStartMuted()
কল করুন এবং NativeAdOptions.Builder.setVideoOptions()
কল করুন।
সূচনা নিঃশব্দ আচরণ ডিফল্টরূপে সক্রিয় করা হয়.
অক্ষম করা হলে, আপনার অ্যাপ অনুরোধ করে ভিডিওটি অডিও দিয়ে শুরু হওয়া উচিত।
সক্রিয় করা হলে, আপনার অ্যাপ অনুরোধ করে যে ভিডিওটি অডিও মিউট দিয়ে শুরু হওয়া উচিত।
নিচের উদাহরণটি দেখায় কিভাবে আন-মিউট অডিও দিয়ে ভিডিও শুরু করতে হয়।
কোটলিন
val videoOptions = VideoOptions.Builder()
.setStartMuted(false)
.build()
val adRequest = NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
জাভা
VideoOptions videoOptions = VideoOptions.Builder()
.setStartMuted(false)
.build()
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
কাস্টম প্লেব্যাক নিয়ন্ত্রণ
এটি আপনাকে ভিডিও চালাতে, বিরতি দিতে বা নিঃশব্দ করার জন্য কাস্টম ভিডিও ইনপুট নিয়ন্ত্রণের অনুরোধ করতে দেয়৷
বিজ্ঞাপনের শুরুর নিঃশব্দ অবস্থা সেট করতে, VideoOptions.Builder.setCustomControlsRequested()
কল করুন।
কাস্টম প্লেব্যাক নিয়ন্ত্রণ ডিফল্টরূপে অক্ষম করা হয়।
অক্ষম করা হলে, আপনার ভিডিও SDK রেন্ডার করা ইনপুট নিয়ন্ত্রণগুলি দেখাবে৷
যদি বিজ্ঞাপনটিতে ভিডিও সামগ্রী থাকে এবং কাস্টম নিয়ন্ত্রণ সক্ষম করা থাকে, তাহলে আপনাকে বিজ্ঞাপনের সাথে আপনার কাস্টম নিয়ন্ত্রণগুলি প্রদর্শন করা উচিত, কারণ বিজ্ঞাপনটি নিজেই কোনো নিয়ন্ত্রণ দেখাবে না। নিয়ন্ত্রণ তারপর প্রাসঙ্গিক পদ্ধতি কল করতে পারেন
VideoOptions.Builder.setCustomControlsRequested()
নিম্নোক্ত উদাহরণটি দেখায় কিভাবে কাস্টম প্লেব্যাক নিয়ন্ত্রণ সহ একটি ভিডিওর অনুরোধ করুন৷
কোটলিন
val videoOptions: VideoOptions.Builder()
.setCustomControlsRequested(true)
.build()
val adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
জাভা
VideoOptions VideoOptions = VideoOptions.Builder()
.setCustomControlsRequested(true)
.build()
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করুন
কারণ অনুরোধের সময় এটি জানা যায় না যে প্রত্যাবর্তিত বিজ্ঞাপনটি কাস্টম ভিডিও নিয়ন্ত্রণের অনুমতি দেবে কিনা, আপনাকে অবশ্যই এটিতে কাস্টম নিয়ন্ত্রণ সক্ষম করা আছে কিনা তা পরীক্ষা করতে হবে৷
কোটলিন
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
val mediaContent = nativeAd.mediaContent;
if (mediaContent != null) {
val videoController = mediaContent.videoController;
val canShowCustomControls = videoController?.isCustomControlsEnabled();
}
}
};
জাভা
NativeAdLoaderCallback adCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
VideoController videoController = mediaContent.getVideoController();
if (videoController != null) {
boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}
}
}
};
কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন
নিম্নলিখিত সেরা অনুশীলনগুলি ব্যবহার করে কাস্টম ভিডিও নিয়ন্ত্রণ রেন্ডার করুন:
- কাস্টম কন্ট্রোল ভিউকে নেটিভ অ্যাড ভিউয়ের চাইল্ড হিসেবে রেন্ডার করুন। এই পদ্ধতিটি খোলা পরিমাপ দর্শনযোগ্যতা গণনাকে কাস্টম নিয়ন্ত্রণগুলিকে একটি বন্ধুত্বপূর্ণ বাধা হিসাবে বিবেচনা করতে দেয়।
- সম্পূর্ণ মিডিয়া ভিউতে একটি অদৃশ্য ওভারলে রেন্ডার করা এড়িয়ে চলুন। ওভারলে মিডিয়া ভিউতে ক্লিক ব্লক করে, নেটিভ বিজ্ঞাপনের কর্মক্ষমতাকে নেতিবাচকভাবে প্রভাবিত করে। পরিবর্তে, একটি ছোট ওভারলে তৈরি করুন যা নিয়ন্ত্রণগুলি ফিট করার জন্য যথেষ্ট বড়।
কাস্টম ক্লিক অঙ্গভঙ্গি
কাস্টম ক্লিক অঙ্গভঙ্গি হল একটি নেটিভ বিজ্ঞাপন বৈশিষ্ট্য যা বিজ্ঞাপনের ভিউগুলিতে সোয়াইপগুলিকে বিজ্ঞাপন ক্লিক হিসাবে নিবন্ধিত হতে সক্ষম করে৷ এটি এমন অ্যাপগুলির সাথে কাজ করার জন্য ডিজাইন করা হয়েছে যা সামগ্রী নেভিগেশনের জন্য সোয়াইপ অঙ্গভঙ্গি ব্যবহার করে। এই নির্দেশিকাটি দেখায় কিভাবে আপনার নেটিভ বিজ্ঞাপনে কাস্টম ক্লিক ইঙ্গিত সক্ষম করতে হয়।
NativeAdRequest.Builder.enableCustomClickGestureDirection()
কে NativeAd.SwipeGestureDirection
এবং একটি boolean
মান সহ কল করুন।
নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।
কাস্টম ক্লিক অঙ্গভঙ্গি ডিফল্টরূপে অক্ষম করা হয়.
অক্ষম করা হলে, আপনার অ্যাপ স্বাভাবিক ক্লিকিং আচরণকে সমর্থন করবে।
সক্রিয় করা হলে, আপনার অ্যাপ কাস্টম সোয়াইপ অঙ্গভঙ্গি সমর্থন করবে।
নিম্নলিখিত উদাহরণটি ডানদিকে একটি কাস্টম সোয়াইপ অঙ্গভঙ্গি প্রয়োগ করে এবং সাধারণ ট্যাব আচরণ সংরক্ষণ করে।
কোটলিন
val adOptions = NativeAdOptions
.Builder()
.enableCustomClickGestureDirection(
/* swipeDirection */ NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
/* tapsAllowed= */ true)
.build();
// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
val adRequest = NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
listOf(NativeAd.NativeAdType.NATIVE))
.withNativeAdOptions(adOptions)
.build();
জাভা
NativeAdOptions adOptions = new NativeAdOptions
.Builder()
.enableCustomClickGestureDirection(
/* swipeDirection */ NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
/* tapsAllowed= */ true)
.build();
// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"ca-app-pub-3940256099942544/2247696110",
List.of(NativeAd.NativeAdType.NATIVE))
.withNativeAdOptions(adOptions)
.build();
সোয়াইপ জেসচার ইভেন্টের জন্য শুনুন
সোয়াইপ জেসচার ইভেন্টগুলি শুনতে, NativeAd.setAdEventCallback()
NativeAdEventCallback
এর সাথে কল করুন এবং onAdSwipeGestureClicked()
পদ্ধতিটি প্রয়োগ করুন৷
কোটলিন
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Implement the onAdSwipeGestureClicked() method.
val nativeAdCallback: NativeAdEventCallback = object : NativeAdEventCallback {
override fun onAdSwipeGestureClicked() {
// A swipe gesture click has occurred.
}
}
}
}
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adCallback)
জাভা
NativeAdLoaderCallback adCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Implement the onAdSwipeGestureClicked() method.
NativeAdEventCallback nativeAdCallback = new NativeAdEventCallback() {
@Override
public void onAdSwipeGestureClicked() {
// A swipe gesture click has occurred.
}
};
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adCallback);
মধ্যস্থতা
কাস্টম ক্লিক ইঙ্গিত শুধুমাত্র নেটিভ বিজ্ঞাপনগুলিতে কাজ করে যা Google মোবাইল বিজ্ঞাপন SDK রেন্ডার করে। রেন্ডারিংয়ের জন্য যে বিজ্ঞাপন উত্সগুলির জন্য তৃতীয়-পক্ষের SDK প্রয়োজন , কাস্টম ক্লিক দিকনির্দেশ সেটিং-এ সাড়া দেয় না৷