কাস্টম ইভেন্টগুলি আপনাকে একটি বিজ্ঞাপন নেটওয়ার্কের জন্য জলপ্রপাতের মধ্যস্থতা যোগ করতে দেয় যা একটি সমর্থিত বিজ্ঞাপন নেটওয়ার্ক নয়৷ আপনি যে বিজ্ঞাপন নেটওয়ার্কটি সংহত করতে চান তার জন্য একটি কাস্টম ইভেন্ট অ্যাডাপ্টার প্রয়োগ করে আপনি এটি করেন৷
পূর্বশর্ত
আপনি কাস্টম ইভেন্ট তৈরি করার আগে, আপনাকে প্রথমে আপনার অ্যাপে নিম্নলিখিত বিজ্ঞাপন বিন্যাসগুলির মধ্যে একটিকে সংহত করতে হবে:
UI এ একটি কাস্টম ইভেন্ট তৈরি করুন
অ্যাড ম্যানেজার UI-তে প্রথমে একটি কাস্টম ইভেন্ট তৈরি করতে হবে। ফলন গোষ্ঠী তৈরি এবং পরিচালনার নির্দেশাবলী দেখুন।
আপনাকে নিম্নলিখিত সরবরাহ করতে হবে:
- ক্লাসের নাম
কাস্টম ইভেন্ট অ্যাডাপ্টার প্রয়োগ করে এমন ক্লাসের সম্পূর্ণ-যোগ্য নাম—উদাহরণস্বরূপ,
com.google.ads.mediation.sample.customevent.SampleCustomEvent
। একটি সর্বোত্তম অনুশীলন হিসাবে, আমরা সমস্ত কাস্টম ইভেন্ট বিজ্ঞাপন ফর্ম্যাটের জন্য একটি একক অ্যাডাপ্টার ক্লাস ব্যবহার করার পরামর্শ দিই৷- লেবেল
বিজ্ঞাপনের উৎসকে সংজ্ঞায়িত করে একটি অনন্য নাম।
- প্যারামিটার
আপনার কাস্টম ইভেন্ট অ্যাডাপ্টারের কাছে একটি ঐচ্ছিক স্ট্রিং আর্গুমেন্ট পাস হয়েছে৷
অ্যাডাপ্টার শুরু করুন
যখন Google মোবাইল বিজ্ঞাপন SDK শুরু হয়, তখন সমস্ত সমর্থিত তৃতীয়-পক্ষ অ্যাডাপ্টার এবং অ্যাড ম্যানেজার UI-এর মধ্যে অ্যাপের জন্য কনফিগার করা কাস্টম ইভেন্টগুলিতে initialize()
হয়। আপনার কাস্টম ইভেন্টের জন্য প্রয়োজনীয় থার্ড-পার্টি SDK-তে যেকোনো প্রয়োজনীয় সেটআপ বা আরম্ভ করার জন্য এই পদ্ধতিটি ব্যবহার করুন।
জাভা
package com.google.ads.mediation.sample.customevent;
import com.google.android.gms.ads.mediation.Adapter;
import com.google.android.gms.ads.mediation.InitializationCompleteCallback;
import com.google.android.gms.ads.mediation.MediationConfiguration;
public class SampleAdNetworkCustomEvent extends Adapter {
private static final String SAMPLE_AD_UNIT_KEY = "parameter";
@Override
public void initialize(Context context,
InitializationCompleteCallback initializationCompleteCallback,
List<MediationConfiguration> mediationConfigurations) {
// This is where you will initialize the SDK that this custom
// event is built for. Upon finishing the SDK initialization,
// call the completion handler with success.
initializationCompleteCallback.onInitializationSucceeded();
}
}
কোটলিন
package com.google.ads.mediation.sample.customevent
import com.google.android.gms.ads.mediation.Adapter
import com.google.android.gms.ads.mediation.InitializationCompleteCallback
import com.google.android.gms.ads.mediation.MediationConfiguration
class SampleCustomEvent : Adapter() {
private val SAMPLE_AD_UNIT_KEY = "parameter"
override fun initialize(
context: Context,
initializationCompleteCallback: InitializationCompleteCallback,
mediationConfigurations: List<MediationConfiguration>
) {
// This is where you will initialize the SDK that this custom
// event is built for. Upon finishing the SDK initialization,
// call the completion handler with success.
initializationCompleteCallback.onInitializationSucceeded()
}
}
রিপোর্ট সংস্করণ সংখ্যা
সমস্ত কাস্টম ইভেন্ট অবশ্যই কাস্টম ইভেন্ট অ্যাডাপ্টারের সংস্করণ এবং কাস্টম ইভেন্ট ইন্টারফেসের সাথে থার্ড-পার্টি SDK সংস্করণ উভয়ই Google মোবাইল বিজ্ঞাপন SDK-তে রিপোর্ট করতে হবে। সংস্করণগুলিকে VersionInfo
অবজেক্ট হিসাবে রিপোর্ট করা হয়েছে:
জাভা
package com.google.ads.mediation.sample.customevent;
public class SampleCustomEvent extends Adapter {
@Override
public VersionInfo getVersionInfo() {
String versionString = new VersionInfo(1, 2, 3);
String[] splits = versionString.split("\\.");
if (splits.length >= 4) {
int major = Integer.parseInt(splits[0]);
int minor = Integer.parseInt(splits[1]);
int micro = Integer.parseInt(splits[2]) * 100 + Integer.parseInt(splits[3]);
return new VersionInfo(major, minor, micro);
}
return new VersionInfo(0, 0, 0);
}
@Override
public VersionInfo getSDKVersionInfo() {
String versionString = SampleAdRequest.getSDKVersion();
String[] splits = versionString.split("\\.");
if (splits.length >= 3) {
int major = Integer.parseInt(splits[0]);
int minor = Integer.parseInt(splits[1]);
int micro = Integer.parseInt(splits[2]);
return new VersionInfo(major, minor, micro);
}
return new VersionInfo(0, 0, 0);
}
}
কোটলিন
package com.google.ads.mediation.sample.customevent
class SampleCustomEvent : Adapter() {
override fun getVersionInfo(): VersionInfo {
val versionString = VersionInfo(1,2,3).toString()
val splits: List<String> = versionString.split("\\.")
if (splits.count() >= 4) {
val major = splits[0].toInt()
val minor = splits[1].toInt()
val micro = (splits[2].toInt() * 100) + splits[3].toInt()
return VersionInfo(major, minor, micro)
}
return VersionInfo(0, 0, 0)
}
override fun getSDKVersionInfo(): VersionInfo {
val versionString = VersionInfo(1,2,3).toString()
val splits: List<String> = versionString.split("\\.")
if (splits.count() >= 3) {
val major = splits[0].toInt()
val minor = splits[1].toInt()
val micro = splits[2].toInt()
return VersionInfo(major, minor, micro)
}
return VersionInfo(0, 0, 0)
}
}
অনুরোধ বিজ্ঞাপন
একটি বিজ্ঞাপনের অনুরোধ করতে, বিজ্ঞাপন বিন্যাসের জন্য নির্দিষ্ট নির্দেশাবলী পড়ুন: