মধ্যস্থতা সেট-আপ করা

প্ল্যাটফর্ম বেছে নিন: Android iOS Unity Flutter Android (Legacy)

আপনার Android অ্যাপের সাথে কীভাবে একটি মধ্যস্থতা অ্যাডাপ্টার ইন্টিগ্রেট করতে হয় তা এই গাইড থেকে জানতে পারবেন।

পূর্বশর্ত

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

আপনি কি মধ্যস্থতা সম্পর্কে নতুন? পড়ুন মধ্যস্থতা সম্পর্কে ভূমিকা।

GMA Next-Gen SDK চালু করুন

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

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

Kotlin

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 GMA Next-Gen SDK 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.
    }
  }
}

Java

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 GMA Next-Gen SDK 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 Mobile Ads SDK (Legacy)-এর উপর নির্ভরশীল। তবে ,GMA Next-Gen SDK মধ্যস্থতা অ্যাডাপ্টরের প্রয়োজনীয় সব ক্লাস অন্তর্ভুক্ত করে। ডুপ্লিকেট চিহ্ন সম্পর্কিত কম্পাইল এরর এড়াতে, আপনাকে মধ্যস্থতা অ্যাডাপ্টারের মাধ্যমে ডিপেন্ডেন্সি হিসেবে পুল করা থেকে Google Mobile Ads SDK (Legacy) বাদ দিতে হবে।

আপনার অ্যাপ-লেভেল build.gradle ফাইলে, সব ডিপেন্ডেন্সি থেকে গ্লোবালি play-services-ads এবং play-services-ads-lite, দুটি মডিউলই বাদ দিন:

Kotlin

configurations.configureEach {
    exclude(group = "com.google.android.gms", module = "play-services-ads")
    exclude(group = "com.google.android.gms", module = "play-services-ads-lite")
}

Groovy

configurations.configureEach {
    exclude group: "com.google.android.gms", module: "play-services-ads"
    exclude group: "com.google.android.gms", module: "play-services-ads-lite"
}

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

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

Kotlin

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

Java

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

মধ্যস্থতায় ব্যবহৃত ব্যানার বিজ্ঞাপন ইউনিটের জন্য সব থার্ড-পার্টি বিজ্ঞাপন সোর্স UI-তে রিফ্রেশ করার সুবিধা বন্ধ করতে ভুলবেন না। এটি ডবল রিফ্রেশ হওয়া আটকায়, কারণ Ad Manager-ও আপনার ব্যানার বিজ্ঞাপন ইউনিটের রিফ্রেশ রেটের উপর ভিত্তি করে রিফ্রেশ ট্রিগার করে।

মার্কিন যুক্তরাষ্ট্রের বিভিন্ন রাজ্যের গোপনীয়তা আইন ও GDPR

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

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