এবার শুরু করা যাক

AdMob মধ্যস্থতা হল এমন একটি বৈশিষ্ট্য যা আপনাকে AdMob নেটওয়ার্ক, তৃতীয় পক্ষের বিজ্ঞাপন নেটওয়ার্ক এবং AdMob প্রচারাভিযান সহ একাধিক উৎস থেকে আপনার অ্যাপে বিজ্ঞাপন পরিবেশন করতে দেয়। AdMob মধ্যস্থতা আপনার ফিল রেটকে সর্বাধিক করতে এবং বিজ্ঞাপন পরিবেশনের জন্য আপনি সর্বোত্তম উপলব্ধ নেটওয়ার্ক খুঁজে পাচ্ছেন তা নিশ্চিত করতে একাধিক নেটওয়ার্কে বিজ্ঞাপনের অনুরোধ পাঠিয়ে আপনার নগদীকরণ বাড়াতে সহায়তা করে। কেস স্টাডি .

পূর্বশর্ত

আপনি একটি বিজ্ঞাপন বিন্যাসের জন্য মধ্যস্থতা সংহত করার আগে, আপনাকে সেই বিজ্ঞাপন বিন্যাসটিকে আপনার অ্যাপে সংহত করতে হবে:

মধ্যস্থতায় নতুন? AdMob মধ্যস্থতার ওভারভিউ পড়ুন।

বিডিংয়ের জন্য: Google মোবাইল বিজ্ঞাপন SDK 18.3.0 বা উচ্চতর।

মোবাইল বিজ্ঞাপন SDK শুরু করুন

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

নিচের নমুনা কোডটি দেখায় যে আপনি কীভাবে বিজ্ঞাপনের অনুরোধ করার আগে প্রতিটি অ্যাডাপ্টারের আরম্ভ করার স্থিতি পরীক্ষা করতে পারেন।

জাভা

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        new Thread(
                () ->
                    // Initialize the Google Mobile Ads SDK on a background thread.
                    MobileAds.initialize(
                        this,
                        initializationStatus -> {
                          Map<String, AdapterStatus> statusMap =
                              initializationStatus.getAdapterStatusMap();
                          for (String adapterClass : statusMap.keySet()) {
                            AdapterStatus status = statusMap.get(adapterClass);
                            Log.d(
                                "MyApp",
                                String.format(
                                    "Adapter name: %s, Description: %s, Latency: %d",
                                    adapterClass, status.getDescription(), status.getLatency()));
                          }
                          // Start loading ads here...
                        }))
            .start();
    }
}

কোটলিন

import com.google.android.gms.ads.MobileAds
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 the Google Mobile Ads SDK on a background thread.
      MobileAds.initialize(this@MainActivity) { initializationStatus ->
        val statusMap =
          initializationStatus.adapterStatusMap
        for (adapterClass in statusMap.keys) {
          val status = statusMap[adapterClass]
          Log.d(
            "MyApp", String.format(
              "Adapter name: %s, Description: %s, Latency: %d",
              adapterClass, status!!.description, status.latency
            )
          )
        }
        // Start loading ads here...
      }
    }
  }
}

কোন বিজ্ঞাপন নেটওয়ার্ক অ্যাডাপ্টার ক্লাস বিজ্ঞাপন লোড করেছে তা পরীক্ষা করুন

এখানে কিছু নমুনা কোড রয়েছে যা একটি ব্যানার বিজ্ঞাপনের জন্য বিজ্ঞাপন নেটওয়ার্ক শ্রেণীর নাম লগ করে:

জাভা

public void onAdLoaded() {
  Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}

কোটলিন

override fun onAdLoaded() {
  Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}

এই পদ্ধতি সম্পর্কে বিস্তারিত জানার জন্য getMediationAdapterClassName() -এ ResponseInfo ডকুমেন্টেশন পড়ুন।

একটি কার্যকলাপ উদাহরণ দিয়ে আপনার বিজ্ঞাপন বস্তু শুরু করুন

একটি নতুন বিজ্ঞাপন অবজেক্টের কনস্ট্রাক্টরে (উদাহরণস্বরূপ, AdView ), আপনাকে অবশ্যই Context টাইপের একটি অবজেক্টে পাস করতে হবে। মধ্যস্থতা ব্যবহার করার সময় এই Context অন্যান্য বিজ্ঞাপন নেটওয়ার্কগুলিতে প্রেরণ করা হয়৷ কিছু বিজ্ঞাপন নেটওয়ার্কের জন্য আরও সীমাবদ্ধ Context প্রয়োজন যেটি Activity ধরণের এবং একটি Activity উদাহরণ ছাড়া বিজ্ঞাপন পরিবেশন করতে সক্ষম নাও হতে পারে। তাই, আপনার মধ্যস্থতা করা বিজ্ঞাপন নেটওয়ার্কগুলির সাথে সামঞ্জস্যপূর্ণ অভিজ্ঞতা নিশ্চিত করার জন্য বিজ্ঞাপন অবজেক্টগুলি শুরু করার সময় আমরা একটি Activity উদাহরণে পাস করার পরামর্শ দিই।

AdMob মধ্যস্থতায় ব্যবহৃত ব্যানার বিজ্ঞাপন ইউনিটগুলির জন্য সমস্ত তৃতীয় পক্ষের বিজ্ঞাপন নেটওয়ার্ক UI-তে রিফ্রেশ অক্ষম করার বিষয়টি নিশ্চিত করুন৷ এটি একটি ডবল রিফ্রেশকে বাধা দেয় কারণ AdMob আপনার ব্যানার বিজ্ঞাপন ইউনিটের রিফ্রেশ হারের উপর ভিত্তি করে একটি রিফ্রেশ ট্রিগার করে।

নেটিভ বিজ্ঞাপন মধ্যস্থতা

নেটিভ মধ্যস্থতা বাস্তবায়ন করার সময় বিবেচনা করার জন্য নিম্নলিখিত কিছু সেরা অনুশীলনগুলি রয়েছে৷

নেটিভ বিজ্ঞাপন উপস্থাপনা নীতি
প্রতিটি বিজ্ঞাপন নেটওয়ার্কের নিজস্ব নীতি আছে। মধ্যস্থতা ব্যবহার করার সময়, এটি মনে রাখা গুরুত্বপূর্ণ যে আপনার অ্যাপটিকে এখনও বিজ্ঞাপন প্রদানকারী মধ্যস্থতাকারী নেটওয়ার্কের নীতিগুলি মেনে চলতে হবে৷
loadAds() এর পরিবর্তে loadAd() ব্যবহার করুন
loadAds() পদ্ধতি শুধুমাত্র Google বিজ্ঞাপন পরিবেশন করে। মধ্যস্থতামূলক বিজ্ঞাপনের জন্য, পরিবর্তে loadAd() ব্যবহার করুন।

মার্কিন যুক্তরাষ্ট্রের গোপনীয়তা আইন এবং জিডিপিআর

আপনি যদি মার্কিন যুক্তরাষ্ট্রের গোপনীয়তা আইন বা জেনারেল ডেটা প্রোটেকশন রেগুলেশন (GDPR) মেনে চলতে চান, তাহলে AdMob গোপনীয়তা ও মেসেজিং-এর মার্কিন রাজ্য বা GDPR বিজ্ঞাপন অংশীদারদের তালিকায় আপনার মধ্যস্থতা অংশীদারদের যোগ করতে মার্কিন রাজ্যের প্রবিধান সেটিংস বা GDPR সেটিংসের ধাপগুলি অনুসরণ করুন। এটি করতে ব্যর্থ হলে অংশীদাররা আপনার অ্যাপে বিজ্ঞাপন পরিবেশন করতে ব্যর্থ হতে পারে।

সীমাবদ্ধ ডেটা প্রসেসিং (RDP) সক্ষম করা এবং Google ব্যবহারকারী মেসেজিং প্ল্যাটফর্ম (UMP) SDK- এর সাথে GDPR সম্মতি পাওয়ার বিষয়ে আরও জানুন।