AdMob মধ্যস্থতা হল এমন একটি বৈশিষ্ট্য যা আপনাকে AdMob নেটওয়ার্ক এবং তৃতীয় পক্ষের বিজ্ঞাপন উত্স সহ একাধিক উত্স থেকে আপনার অ্যাপগুলিতে বিজ্ঞাপন পরিবেশন করতে দেয়৷ AdMob মধ্যস্থতা আপনার ফিল রেট বাড়াতে এবং বিজ্ঞাপন পরিবেশনের জন্য আপনি সেরা উপলব্ধ নেটওয়ার্ক খুঁজে পেয়েছেন তা যাচাই করতে একাধিক নেটওয়ার্কে বিজ্ঞাপনের অনুরোধ পাঠিয়ে আপনার নগদীকরণ বাড়াতে সহায়তা করে। কেস স্টাডি ।
পূর্বশর্ত
আপনি একটি বিজ্ঞাপন বিন্যাসের জন্য মধ্যস্থতা সংহত করার আগে, আপনাকে সেই বিজ্ঞাপন বিন্যাসটিকে আপনার অ্যাপে সংহত করতে হবে:
- ব্যানার বিজ্ঞাপন
- ইন্টারস্টিশিয়াল বিজ্ঞাপন
- নেটিভ বিজ্ঞাপন
- পুরস্কৃত বিজ্ঞাপন
- পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপন
মধ্যস্থতায় নতুন? AdMob মধ্যস্থতার ওভারভিউ পড়ুন।
Google মোবাইল বিজ্ঞাপন SDK (বিটা) শুরু করুন
দ্রুত শুরু নির্দেশিকা আপনাকে দেখায় কিভাবে Google মোবাইল বিজ্ঞাপন SDK (বিটা) শুরু করতে হয় । সেই প্রারম্ভিক কলের সময়, মধ্যস্থতা অ্যাডাপ্টারগুলিও শুরু হয়। প্রথম বিজ্ঞাপন অনুরোধে প্রতিটি বিজ্ঞাপন নেটওয়ার্ক থেকে সম্পূর্ণ অংশগ্রহণ যাচাই করার জন্য আপনি বিজ্ঞাপন লোড করার আগে আরম্ভ করার জন্য অপেক্ষা করা গুরুত্বপূর্ণ।
নিচের নমুনা কোডটি দেখায় যে আপনি কীভাবে বিজ্ঞাপনের অনুরোধ করার আগে প্রতিটি অ্যাডাপ্টারের আরম্ভ করার স্থিতি পরীক্ষা করতে পারেন।
কোটলিন
import com.google.android.libraries.ads.mobile.sdk.MobileAds
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val backgroundScope = CoroutineScope(Dispatchers.IO)
backgroundScope.launch {
// Initialize Google Mobile Ads SDK (beta) on a background thread.
MobileAds.initialize(this@MainActivity, InitializationConfig.Builder("SAMPLE_APP_ID").build()) {
initializationStatus ->
for ((adapterName, adapterStatus) in initializationStatus.adapterStatusMap) {
Log.d(
"MyApp",
String.format(
"Adapter name: %s, Status code: %s, Status string: %s, Latency: %d",
adapterName,
adapterStatus.initializationState,
adapterStatus.description,
adapterStatus.latency,
),
)
}
// Adapter initialization is complete.
}
// Other methods on MobileAds can now be called.
}
}
}
জাভা
import com.google.android.libraries.ads.mobile.sdk.MobileAds;
import com.google.android.libraries.ads.mobile.sdk.initialization.AdapterStatus;
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig;
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Thread(
() -> {
// Initialize Google Mobile Ads SDK (beta) on a background thread.
MobileAds.initialize(
this,
new InitializationConfig.Builder("SAMPLE_APP_ID")
.build(),
initializationStatus -> {
Map<String, AdapterStatus> adapterStatusMap =
initializationStatus.getAdapterStatusMap();
for (String adapterClass : adapterStatusMap.keySet()) {
AdapterStatus adapterStatus = adapterStatusMap.get(adapterClass);
Log.d(
"MyApp",
String.format(
"Adapter name: %s, Status code: %s, Status description: %s,"
+ " Latency: %d",
adapterClass,
adapterStatus.getInitializationState(),
adapterStatus.getDescription(),
adapterStatus.getLatency()));
}
// Adapter initialization is complete.
});
// Other methods on MobileAds can now be called.
})
.start();
}
}
মধ্যস্থতা ইন্টিগ্রেশনে com.google.android.gms
মডিউলগুলি বাদ দিন
মধ্যস্থতা অ্যাডাপ্টারগুলি বর্তমান Google মোবাইল বিজ্ঞাপন SDK (বিটা) এর উপর নির্ভর করে। যাইহোক, Google মোবাইল বিজ্ঞাপন SDK (বিটা) মধ্যস্থতা অ্যাডাপ্টারের জন্য প্রয়োজনীয় সমস্ত ক্লাস অন্তর্ভুক্ত করে। ডুপ্লিকেট চিহ্ন সম্পর্কিত কম্পাইল ত্রুটি এড়াতে, আপনাকে মধ্যস্থতা অ্যাডাপ্টারের নির্ভরতা হিসাবে বর্তমান Google মোবাইল বিজ্ঞাপন SDK (বিটা) বাদ দিতে হবে।
আপনার অ্যাপ-লেভেল build.gradle
ফাইলে, play-services-ads
এবং play-services-ads-lite
মডিউল উভয়ই বিশ্বব্যাপী সমস্ত নির্ভরতা থেকে বাদ দিন।
configurations {
all {
exclude(group = "com.google.android.gms", module = "play-services-ads")
exclude(group = "com.google.android.gms", module = "play-services-ads-lite")
}
}
কোন বিজ্ঞাপন নেটওয়ার্ক অ্যাডাপ্টার ক্লাস বিজ্ঞাপন লোড করেছে তা পরীক্ষা করুন
এখানে কিছু নমুনা কোড রয়েছে যা একটি ব্যানার বিজ্ঞাপনের জন্য বিজ্ঞাপন নেটওয়ার্ক শ্রেণীর নাম লগ করে:
কোটলিন
BannerAd.load(
BannerAdRequest.Builder("AD_UNIT_ID", AdSize.BANNER).build(),
object : AdLoadCallback<BannerAd> {
override fun onAdLoaded(ad: BannerAd) {
Log.d(
"MyApp", "Adapter class name: " +
ad.getResponseInfo().mediationAdapterClassName
)
}
}
)
জাভা
BannerAd.load(
new BannerAdRequest.Builder("AD_UNIT_ID", AdSize.BANNER).build(),
new AdLoadCallback<BannerAd>() {
@Override
public void onAdLoaded(@NonNull BannerAd ad) {
Log.d("MyApp",
"Adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}
}
);
AdMob মধ্যস্থতায় ব্যানার বিজ্ঞাপন ব্যবহার করুন
AdMob মধ্যস্থতায় ব্যবহৃত ব্যানার বিজ্ঞাপন ইউনিটগুলির জন্য সমস্ত তৃতীয় পক্ষের বিজ্ঞাপন উত্স UI-তে রিফ্রেশ অক্ষম করা নিশ্চিত করুন৷ এটি একটি ডবল রিফ্রেশকে বাধা দেয় কারণ AdMob আপনার ব্যানার বিজ্ঞাপন ইউনিটের রিফ্রেশ হারের উপর ভিত্তি করে একটি রিফ্রেশ ট্রিগার করে।
মার্কিন যুক্তরাষ্ট্রের গোপনীয়তা আইন এবং জিডিপিআর
আপনি যদি মার্কিন যুক্তরাষ্ট্রের গোপনীয়তা আইন বা জেনারেল ডেটা প্রোটেকশন রেগুলেশন (GDPR) মেনে চলতে চান, তাহলে AdMob গোপনীয়তা ও মেসেজিং-এর মার্কিন রাজ্য বা GDPR বিজ্ঞাপন অংশীদারদের তালিকায় আপনার মধ্যস্থতা অংশীদারদের যোগ করতে মার্কিন রাজ্যের প্রবিধান সেটিংস বা GDPR সেটিংসের ধাপগুলি অনুসরণ করুন। এটি করতে ব্যর্থ হলে অংশীদাররা আপনার অ্যাপে বিজ্ঞাপন পরিবেশন করতে ব্যর্থ হতে পারে।
সীমাবদ্ধ ডেটা প্রসেসিং (RDP) সক্ষম করা এবং Google ব্যবহারকারী মেসেজিং প্ল্যাটফর্ম (UMP) SDK-এর সাথে GDPR সম্মতি পাওয়ার বিষয়ে আরও জানুন।