আপনার কোডে কিছু পরিবর্তন করে, আপনি বিজ্ঞাপনের অনুরোধে নেটিভ এবং ব্যানার বিজ্ঞাপন একত্রিত করতে পারেন।
পূর্বশর্ত
- Google Mobile Ads SDK-এর 11.0.0 বা তার পরের যেকোনও ভার্সন।
- শুরু করার নির্দেশিকা সম্পূর্ণ করুন।
বিজ্ঞাপন লোড করা
কাস্টম-রেন্ডার করা নেটিভ বিজ্ঞাপন AdLoader ক্লাস ব্যবহার করে লোড করা হয়, যার
নিজস্ব AdLoader.Builder ক্লাস আছে যা তৈরির সময় এটিকে কাস্টমাইজ করে। AdLoader তৈরি করার সময় তাতে
লিসনার যোগ করে, কোনও অ্যাপ নির্দিষ্ট করে যে এটি কোন ধরনের
বিজ্ঞাপন ফর্ম্যাট গ্রহণ করার জন্য প্রস্তুত। AdLoader তখন শুধু সেই ধরনের
অনুরোধ করে।
এছাড়াও, AdLoader অবজেক্টকে এমনভাবে কনফিগার করা যেতে পারে যাতে বিজ্ঞাপন অনুরোধ করা যায় এবং এর ফলে
ব্যানার বিজ্ঞাপন বা নেটিভ বিজ্ঞাপন দেখানো যায়। বিল্ডিং করার সময়
OnAdManagerAdViewLoadedListener যোগ করলে AdLoader এটি নির্দিষ্ট করে যে
অনুরোধ পূরণ করার জন্য ব্যানার বিজ্ঞাপনকে নেটিভ বিজ্ঞাপনের সাথে প্রতিযোগিতা করতে হবে।
নিম্নলিখিত কোডটি দেখায় যে কীভাবে একটি AdLoader তৈরি করা যায় যা একটি অনুরোধে
নেটিভ বা ব্যানার বিজ্ঞাপন লোড করতে পারে:
Java
AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner") .forNativeAd(new NativeAd.OnNativeAdLoadedListener() { @Override public void onNativeAdLoaded(NativeAd nativeAd) { // Show the ad. } }) .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() { @Override public void onAdManagerAdViewLoaded(AdManagerAdView adView) { // Show the banner ad. } }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(new AdListener() { @Override public void onAdFailedToLoad(LoadAdError error) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build();
Kotlin
val adLoader = AdLoader.Builder(this, "/21775744923/example/native-and-banner") .forNativeAd { nativeAd -> // Show the ad. } .forAdManagerAdView({ adView -> // Show the banner ad. }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE) .withAdListener(object: AdListener() { override fun onAdFailedToLoad(adError: LoadAdError) { // Handle the failure by logging, altering the UI, etc. } }) .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual options settings. .build()) .build()
forAdManagerAdView() পদ্ধতিটি AdLoader-কে ব্যানার বিজ্ঞাপন পাওয়ার জন্য প্রস্তুত করে।
forAdManagerAdView() কল করার সময় OnAdManagerAdViewLoadedListener-এর পাশাপাশি সঠিক বিজ্ঞাপনের সাইজের পরিবর্তনশীল-দৈর্ঘ্যের তালিকা উল্লেখ করতে হবে।
বিজ্ঞাপনের সঠিক অনুরোধ করতে, অন্তত একটি সঠিক বিজ্ঞাপনের সাইজ উল্লেখ করতে হবে। কোনও
ব্যানার বিজ্ঞাপন সফলভাবে লোড করা হলে, নির্দিষ্ট লিসনার অবজেক্টের
onAdManagerAdViewLoaded() মেথড কল করা হয়।
ডিভাইসের স্ক্রিন সাইজের থেকে ছোট বা সমান সাইজের বিজ্ঞাপন সেট করুন।
স্ক্রিনের সর্বাধিক সাইজ নির্ধারণ করতে, Resources.getDisplayMetrics
পদ্ধতি ব্যবহার করুন। AdSize অবজেক্টের ডাইমেনশন ঘনত্ব-নিরপেক্ষ পিক্সেল (dp) ব্যবহার করে। তুলনা করার সময়, পিক্সেল থেকে dp-তে
স্ক্রিনের সাইজ কনভার্ট করুন।
সাইজ সংক্রান্ত সীমাবদ্ধতার ব্যাপারে আরও জানতে, Ad Manager-এ পূরণ না হওয়া ইম্প্রেশন সংক্রান্ত সমস্যার সমাধান করা নিবন্ধটি দেখুন।
AdViewOptions অবজেক্ট সেট করুন
AdLoader তৈরি করার সময় অন্তর্ভুক্ত করা শেষ ফাংশনটি হল আরেকটি ঐচ্ছিক
পদ্ধতি, withAdManagerAdViewOptions():
Java
.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
Kotlin
.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder() // Methods in the AdManagerAdViewOptions.Builder class can be // used here to specify individual banner options settings. .build()
AdManagerAdViewOptions অবজেক্ট প্রকাশকদের AdLoader-এর মাধ্যমে লোড করা ব্যানারের জন্য নির্দিষ্ট বিকল্প সেট করতে দেয়, যেমন:
setManualImpressionsEnabled()- Google Ad Manager রিজার্ভেশনের জন্য ম্যানুয়াল ইম্প্রেশন রিপোর্টিং চালু করে। ম্যানুয়াল ইম্প্রেশন ব্যবহার করা অ্যাপ নিজেই নির্ধারণ করতে পারে যে কখন ইম্প্রেশন রেকর্ড করা উচিত এবং
AdManagerAdView.recordManualImpression()-এ কল করে তা করতে পারে।