যখন একটি ইম্প্রেশন ঘটে, তখন Google মোবাইল বিজ্ঞাপন SDK সেই ইম্প্রেশনের সাথে যুক্ত বিজ্ঞাপনের আয়ের ডেটা প্রদান করে। আপনি একটি ব্যবহারকারীর জীবনকালের মান গণনা করতে ডেটা ব্যবহার করতে পারেন, বা অন্যান্য প্রাসঙ্গিক সিস্টেমে ডাটা ডাউনস্ট্রিম ফরোয়ার্ড করতে পারেন।
এই নির্দেশিকাটি আপনার Android অ্যাপে ইম্প্রেশন-স্তরের বিজ্ঞাপন আয়ের ডেটা ক্যাপচার বাস্তবায়নে সাহায্য করার উদ্দেশ্যে।
পূর্বশর্ত
- নিশ্চিত করুন যে আপনি AdMob UI-তে ইম্প্রেশন-লেভেল বিজ্ঞাপন আয় বৈশিষ্ট্যটি চালু করেছেন ।
- Google মোবাইল বিজ্ঞাপন SDK 21.1.0 বা উচ্চতর আমদানি করুন৷
- শুরু করুন গাইডটি সম্পূর্ণ করুন।
আপনি যেকোন ইম্প্রেশন-লেভেল বিজ্ঞাপনের আয় পাওয়ার আগে, আপনাকে অন্তত একটি বিজ্ঞাপন ফর্ম্যাট বাস্তবায়ন করতে হবে:
প্রদত্ত ইভেন্ট হ্যান্ডলার
প্রতিটি বিজ্ঞাপন বিন্যাসে একটি OnPaidEventListener
আছে। একটি বিজ্ঞাপন ইভেন্টের জীবনচক্র চলাকালীন, Google মোবাইল বিজ্ঞাপন SDK ইম্প্রেশন ইভেন্টগুলি নিরীক্ষণ করে এবং একটি অর্জিত মূল্য সহ হ্যান্ডলারকে আহ্বান করে৷
নিম্নলিখিত উদাহরণটি একটি পুরস্কৃত বিজ্ঞাপনের জন্য অর্থপ্রদানের ঘটনাগুলি পরিচালনা করে:
কোটলিন
import com.google.android.gms.ads.rewarded.RewardedAd
class MainActivity : AppCompatActivity() {
private var rewardedAd: RewardedAd? = null
private final var TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
val adRequest = AdRequest.Builder().build()
RewardedAd.load(this, "AD_UNIT_ID",
adRequest, object: RewardedAdLoadCallback() {
override fun onAdLoaded(ad: RewardedAd) {
rewardedAd = ad
// Set paid event listener
rewardedAd.onPaidEventListener = OnPaidEventListener { adValue ->
// TODO: Send the impression-level ad revenue information to your preferred
// analytics server directly within this callback.
// Extract the impression-level ad revenue data.
val valueMicros = adValue.valueMicros
val currencyCode = adValue.currencyCode
val precision = adValue.precisionType
// Get the ad unit ID.
val adUnitId = rewardedAd.adUnitId
val loadedAdapterResponseInfo = rewardedAd.responseInfo.loadedAdapterResponse
val adSourceName = loadedAdapterResponseInfo.adSourceName
val adSourceId = loadedAdapterResponseInfo.adSourceId
val adSourceInstanceName = loadedAdapterResponseInfo.adSourceInstanceName
val adSourceInstanceId = loadedAdapterResponseInfo.adSourceInstanceId
val extras = rewardedAd.responseInfo.responseExtras
val mediationGroupName = extras.getString("mediation_group_name")
val mediationABTestName = extras.getString("mediation_ab_test_name")
val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}
}
})
}
}
জাভা
import com.google.android.gms.ads.rewarded.RewardedAd;
public class MainActivity extends Activity {
private RewardedAd rewardedAd;
private final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
AdRequest adRequest = new AdRequest.Builder().build();
RewardedAd.load(this, "AD_UNIT_ID",
adRequest, new RewardedAdLoadCallback(){
@Override
public void onAdLoaded(@NonNull RewardedAd ad) {
rewardedAd = ad;
// Set paid event listener
rewardedAd.setOnPaidEventListener(new OnPaidEventListener() {
@Override
public void onPaidEvent(AdValue adValue) {
// TODO: Send the impression-level ad revenue information to your
//preferred analytics server directly within this callback.
// Extract the impression-level ad revenue data.
long valueMicros = adValue.getValueMicros();
String currencyCode = adValue.getCurrencyCode();
int precision = adValue.getPrecisionType();
// Get the ad unit ID.
String adUnitId = rewardedAd.getAdUnitId();
AdapterResponseInfo loadedAdapterResponseInfo = rewardedAd.getResponseInfo().
getLoadedAdapterResponseInfo();
String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();
Bundle extras = rewardedAd.getResponseInfo().getResponseExtras();
String mediationGroupName = extras.getString("mediation_group_name");
String mediationABTestName = extras.getString("mediation_ab_test_name");
String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}
});
}
});
}
}
বিজয়ী বিজ্ঞাপন উত্স সম্পর্কে আরও তথ্যের জন্য, বিজ্ঞাপন প্রতিক্রিয়া সম্পর্কে তথ্য পুনরুদ্ধার দেখুন।
অ্যাপ অ্যাট্রিবিউশন পার্টনারস (AAP) ইন্টিগ্রেশন
অ্যানালিটিক্স প্ল্যাটফর্মে বিজ্ঞাপনের আয়ের ডেটা ফরওয়ার্ড করার সম্পূর্ণ বিবরণের জন্য, অংশীদারের নির্দেশিকা পড়ুন:
অংশীদার SDK |
---|
সামঞ্জস্য করুন |
অ্যাপসফ্লায়ার |
একবচন |
তেনজিন |
বাস্তবায়নের সর্বোত্তম অনুশীলন
- আপনি বিজ্ঞাপন অবজেক্ট তৈরি বা অ্যাক্সেস পেতে অবিলম্বে শ্রোতা সেট করুন, এবং অবশ্যই বিজ্ঞাপন দেখানোর আগে। এটি নিশ্চিত করে যে আপনি কোনো অর্থপ্রদত্ত ইভেন্ট কলব্যাক মিস করবেন না।
- প্রদত্ত ইভেন্ট কলব্যাক কল করার সময় অবিলম্বে আপনার পছন্দের অ্যানালিটিক্স সার্ভারে ইম্প্রেশন-স্তরের বিজ্ঞাপন আয়ের তথ্য পাঠান। এটি নিশ্চিত করে যে আপনি ভুলবশত ক���নো কলব্যাক ড্রপ করবেন না এবং ডেটার অসঙ্গতি এড়ান।
AdValue
AdValue
হল এমন একটি শ্রেণী যা একটি বিজ্ঞাপনের জন্য অর্জিত আর্থিক মূল্যকে প্রতিনিধিত্ব করে, যার মধ্যে মানের মুদ্রা কোড এবং নিচের মত এনকোড করা এর নির্ভুলতা প্রকার।
যথার্থ প্রকার | বর্ণনা |
---|---|
UNKNOWN | একটি বিজ্ঞাপন মান যা অজানা। এলটিভি পিংব্যাক সক্ষম হলে এটি ফেরত দেওয়া হয় কিন্তু পর্যাপ্ত ডেটা উপলব্ধ থাকে না। |
ESTIMATED | সমষ্টিগত ডেটা থেকে আনুমানিক একটি বিজ্ঞাপন মান। |
PUBLISHER_PROVIDED | একজন প্রকাশক বিজ্ঞাপনের মান প্রদান করেছেন, যেমন একটি মধ্যস্থতা গোষ্ঠীতে ম্যানুয়াল CPM। |
PRECISE | এই বিজ্ঞাপনের জন্য প্রদত্ত সুনির্দিষ্ট মান। |
AdMob মধ্যস্থতার ক্ষেত্রে, AdMob অপ্টিমাইজ করা বিজ্ঞাপন উত্সগুলির জন্য একটি ESTIMATED
মান প্রদান করার চেষ্টা করে৷
PUBLISHER_PROVIDED
মান ফেরত দেওয়া হয়৷ বিডিং বিজ্ঞাপন উত্স থেকে ইম্প্রেশন পরীক্ষা করুন
একটি পরীক্ষার অনুরোধের মাধ্যমে একটি বিডিং বিজ্ঞাপন উত্সের জন্য একটি ইম্প্রেশন-স্তরের বিজ্ঞাপন আয় ইভেন্ট হওয়ার পরে, আপনি শুধুমাত্র নিম্নলিখিত মানগুলি পাবেন:
-
UNKNOWN
: নির্ভুলতা প্রকার নির্দেশ করে।
-
0
: বিজ্ঞাপনের মান নির্দেশ করে।
পূর্বে, আপনি UNKNOWN
ব্যতীত অন্য একটি মান এবং 0
এর বেশি একটি বিজ্ঞাপনের মান হিসাবে স্পষ্টতা প্রকার দেখতে পারেন।
পরীক্ষার বিজ্ঞাপনের অনুরোধ পাঠানোর বিষয়ে বিস্তারিত জানার জন্য, পরীক্ষা ডিভাইস সক্ষম করু�� দে��ুন���
,যখন একটি ইম্প্রেশন ঘটে, তখন Google মোবাইল বিজ্ঞাপন SDK সেই ইম্প্রেশনের সাথে যুক্ত বিজ্ঞাপনের আয়ের ডেটা প্রদান করে। আপনি একটি ব্যবহারকারীর জীবনকালের মান গণনা করতে ডেটা ব্যবহার করতে পারেন, বা অন্যান্য প্রাসঙ্গিক সিস্টেমে ডাটা ডাউনস্ট্রিম ফরোয়ার্ড করতে পারেন।
এই নির্দেশিকাটি আপনার Android অ্যাপে ইম্প্রেশন-স্তরের বিজ্ঞাপন আয়ের ডেটা ক্যাপচার বাস্তবায়নে সাহায্য করার উদ্দেশ্যে।
পূর্বশর্ত
- নিশ্চিত করুন যে আপনি AdMob UI-তে ইম্প্রেশন-লেভেল বিজ্ঞাপন আয় বৈশিষ্ট্যটি চালু করেছেন ।
- Google মোবাইল বিজ্ঞাপন SDK 21.1.0 বা উচ্চতর আমদানি করুন৷
- শুরু করুন গাইডটি সম্পূর্ণ করুন।
আপনি যেকোন ইম্প্রেশন-লেভেল বিজ্ঞাপনের আয় পাওয়ার আগে, আপনাকে অন্তত একটি বিজ্ঞাপন ফর্ম্যাট বাস্তবায়ন করতে হবে:
প্রদত্ত ইভেন্ট হ্যান্ডলার
প্রতিটি বিজ্ঞাপন বিন্যাসে একটি OnPaidEventListener
আছে। একটি বিজ্ঞাপন ইভেন্টের জীবনচক্র চলাকালীন, Google মোবাইল বিজ্ঞাপন SDK ইম্প্রেশন ইভেন্টগুলি নিরীক্ষণ করে এবং একটি অর্জিত মূল্য সহ হ্যান্ডলারকে আহ্বান করে৷
নিম্নলিখিত উদাহরণটি একটি পুরস্কৃত বিজ্ঞাপনের জন্য অর্থপ্রদানের ঘটনাগুলি পরিচালনা করে:
কোটলিন
import com.google.android.gms.ads.rewarded.RewardedAd
class MainActivity : AppCompatActivity() {
private var rewardedAd: RewardedAd? = null
private final var TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
val adRequest = AdRequest.Builder().build()
RewardedAd.load(this, "AD_UNIT_ID",
adRequest, object: RewardedAdLoadCallback() {
override fun onAdLoaded(ad: RewardedAd) {
rewardedAd = ad
// Set paid event listener
rewardedAd.onPaidEventListener = OnPaidEventListener { adValue ->
// TODO: Send the impression-level ad revenue information to your preferred
// analytics server directly within this callback.
// Extract the impression-level ad revenue data.
val valueMicros = adValue.valueMicros
val currencyCode = adValue.currencyCode
val precision = adValue.precisionType
// Get the ad unit ID.
val adUnitId = rewardedAd.adUnitId
val loadedAdapterResponseInfo = rewardedAd.responseInfo.loadedAdapterResponse
val adSourceName = loadedAdapterResponseInfo.adSourceName
val adSourceId = loadedAdapterResponseInfo.adSourceId
val adSourceInstanceName = loadedAdapterResponseInfo.adSourceInstanceName
val adSourceInstanceId = loadedAdapterResponseInfo.adSourceInstanceId
val extras = rewardedAd.responseInfo.responseExtras
val mediationGroupName = extras.getString("mediation_group_name")
val mediationABTestName = extras.getString("mediation_ab_test_name")
val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}
}
})
}
}
জাভা
import com.google.android.gms.ads.rewarded.RewardedAd;
public class MainActivity extends Activity {
private RewardedAd rewardedAd;
private final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
AdRequest adRequest = new AdRequest.Builder().build();
RewardedAd.load(this, "AD_UNIT_ID",
adRequest, new RewardedAdLoadCallback(){
@Override
public void onAdLoaded(@NonNull RewardedAd ad) {
rewardedAd = ad;
// Set paid event listener
rewardedAd.setOnPaidEventListener(new OnPaidEventListener() {
@Override
public void onPaidEvent(AdValue adValue) {
// TODO: Send the impression-level ad revenue information to your
//preferred analytics server directly within this callback.
// Extract the impression-level ad revenue data.
long valueMicros = adValue.getValueMicros();
String currencyCode = adValue.getCurrencyCode();
int precision = adValue.getPrecisionType();
// Get the ad unit ID.
String adUnitId = rewardedAd.getAdUnitId();
AdapterResponseInfo loadedAdapterResponseInfo = rewardedAd.getResponseInfo().
getLoadedAdapterResponseInfo();
String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();
Bundle extras = rewardedAd.getResponseInfo().getResponseExtras();
String mediationGroupName = extras.getString("mediation_group_name");
String mediationABTestName = extras.getString("mediation_ab_test_name");
String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}
});
}
});
}
}
বিজয়ী বিজ্ঞাপন উত্স সম্পর্কে আরও তথ্যের জন্য, বিজ্ঞাপন প্রতিক্রিয়া সম্পর্কে তথ্য পুনরুদ্ধার দেখুন।
অ্যাপ অ্যাট্রিবিউশন পার্টনারস (AAP) ইন্টিগ্রেশন
অ্যানালিটিক্স প্ল্যাটফর্মে বিজ্ঞাপনের আয়ের ডেটা ফরওয়ার্ড করার সম্পূর্ণ বিবরণের জন্য, অংশীদারের নির্দেশিকা পড়ুন:
অংশীদার SDK |
---|
সামঞ্জস্য করুন |
অ্যাপসফ্লায়ার |
একবচন |
তেনজিন |
বাস্তবায়নের সর্বোত্তম অনুশীলন
- আপনি বিজ্ঞাপন অবজেক্ট তৈরি বা অ্যাক্সেস পেতে অবিলম্বে শ্রোতা সেট করুন, এবং অবশ্যই বিজ্ঞাপন দেখানোর আগে। এটি নিশ্চিত করে যে আপনি কোনো প্র��ত্ত ইভেন্ট কলব্যাক মিস করবেন না।
- প্রদত্ত ইভেন্ট কলব্যাক কল করার সময় অবিলম্বে আপনার পছন্দের অ্যানালিটিক্স সার্ভারে ইম্প্রেশন-স্তরের বিজ্ঞাপন আয়ের তথ্য পাঠান। এটি নিশ্চিত করে যে আপনি ভুলবশত কোনো কলব্যাক ড্রপ করবেন না এবং ডেটার অসঙ্গতি এড়ান।
AdValue
AdValue
হল এমন একটি শ্রেণী যা একটি বিজ্ঞাপনের জন্য অর্জিত আর্থিক মূল্যকে প্রতিনিধিত্ব করে, যার মধ্যে মানের মুদ্রা কোড এবং নিচের মত এনকোড করা এর নির্ভুলতা প্রকার।
যথার্থ প্রকার | বর্ণনা |
---|---|
UNKNOWN | একটি বিজ্ঞাপন মান যা অজানা। এলটিভি পিংব্যাক সক্ষম হলে এটি ফেরত দেওয়া হয় কিন্তু পর্যাপ্ত ডেটা উপলব্ধ থাকে না। |
ESTIMATED | সমষ্টিগত ডেটা থেকে আনুমানিক একটি বিজ্ঞাপন মান। |
PUBLISHER_PROVIDED | একজন প্রকাশক বিজ্ঞাপনের মান প্রদান করেছেন, যেমন একটি মধ্যস্থতা গোষ্ঠীতে ম্যানুয়াল CPM। |
PRECISE | এই বিজ্ঞাপনের জন্য প্রদত্ত সুনির্দিষ্ট মান। |
AdMob মধ্যস্থতার ক্ষেত্রে, AdMob অপ্টিমাইজ করা বিজ্ঞাপন উত্সগুলির জন্য একটি ESTIMATED
মান প্রদান করার চেষ্টা করে৷
PUBLISHER_PROVIDED
মান ফেরত দেওয়া হয়৷ বিডিং বিজ্ঞাপন উত্স থেকে ইম্প্রেশন পরীক্ষা করুন
একটি পরীক্ষার অনুরোধের মাধ্যমে একটি বিডিং বিজ্ঞাপন উত্সের জন্য একটি ইম্প্রেশন-স্তরের বিজ্ঞাপন আয় ইভেন্ট হওয়ার পরে, আপনি শুধুমাত্র নিম্নলিখিত মানগুলি পাবেন:
-
UNKNOWN
: নির্ভুলতা প্রকার নির্দেশ করে।
-
0
: বিজ্ঞাপনের মান নির্দেশ করে।
পূর্বে, আপনি UNKNOWN
ব্যতীত অন্য একটি মান এবং 0
এর বেশি একটি বিজ্ঞাপনের মান হিসাবে স্পষ্টতা প্রকার দেখতে পারেন।
পরীক্ষার বিজ্ঞাপনের অনুরোধ পাঠানোর বিষয়ে বিস্তারিত জানার জন্য, পরীক্ষা ডিভাইস সক্ষম করুন দেখুন।