برای اشکالزدایی و ثبت وقایع، تبلیغاتی که با موفقیت بارگذاری میشوند، یک شیء ResponseInfo ارائه میدهند. این شیء علاوه بر اطلاعاتی در مورد تبلیغی که بارگذاری شده است، شامل اطلاعاتی در مورد آبشار میانجیگری مورد استفاده برای بارگذاری تبلیغ نیز میشود.
برای مواردی که یک تبلیغ با موفقیت بارگذاری میشود، شیء تبلیغ دارای یک متد getResponseInfo() است. برای مثال، InterstitialAd.getResponseInfo() اطلاعات پاسخ را برای یک تبلیغ بینابینی بارگذاری شده دریافت میکند.
برای مواردی که تبلیغات بارگذاری نمیشوند و فقط یک خطا موجود است، اطلاعات پاسخ از طریق LoadAdError.getResponseInfo() قابل دسترسی است.
کاتلین
override fun onAdLoaded() {
val responseInfo = adView.responseInfo
Log.d(TAG, responseInfo.toString())
}
override fun onAdFailedToLoad(adError: LoadAdError) {
val responseInfo = adError.responseInfo
Log.d(TAG, responseInfo.toString())
}جاوا
@Override
public void onAdLoaded() {
ResponseInfo responseInfo = adView.getResponseInfo();
Log.d(TAG, responseInfo.toString());
}
@Override
public void onAdFailedToLoad(LoadAdError adError) {
ResponseInfo responseInfo = adError.getResponseInfo();
Log.d(TAG, responseInfo.toString());
}اطلاعات پاسخ
در اینجا نمونه خروجی برگردانده شده توسط ResponseInfo.toString() نشان داده شده است که دادههای اشکالزدایی برگردانده شده برای یک تبلیغ بارگذاری شده را نشان میدهد:
{
"Response ID": "NI3BZZDbGdyQtOUP4o21gAM",
"Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
"Adapter Responses": [
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
}
],
"Loaded Adapter Response": {
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-app-pub-3940256099942544\/9257395921\/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
},
"Response Extras": {
"creative_id": "138471856178",
"line_item_id": "6707237225",
}
}
متدهای شیء ResponseInfo شامل موارد زیر هستند:
| روش | توضیحات |
|---|---|
getAdapterResponses | فهرست AdapterResponseInfo را که شامل فراداده برای هر آداپتور موجود در پاسخ تبلیغ است، برمیگرداند. میتواند برای اشکالزدایی میانجیگری آبشاری و اجرای پیشنهاد قیمت استفاده شود. ترتیب لیست با ترتیب میانجیگری آبشاری برای این درخواست تبلیغ مطابقت دارد.برای اطلاعات بیشتر به اطلاعات پاسخ آداپتور مراجعه کنید. |
getLoadedAdapterResponseInfo | AdapterResponseInfo مربوط به آداپتوری که تبلیغ را بارگذاری کرده است را برمیگرداند. |
getMediationAdapterClassName | نام کلاس آداپتور میانجیگری منبع تبلیغاتی که تبلیغ را بارگذاری کرده است، برمیگرداند. |
getResponseId | شناسه پاسخ، یک شناسه منحصر به فرد برای پاسخ تبلیغ است. از این شناسه میتوان برای شناسایی و مسدود کردن تبلیغ در مرکز بررسی تبلیغات (ARC) استفاده کرد. |
getResponseExtras | اطلاعات اضافی در مورد پاسخ تبلیغ را برمیگرداند. موارد اضافی ممکن است کلیدهای زیر را برگردانند:
|
کاتلین
override fun onAdLoaded() {
val responseInfo = adView.responseInfo
val responseId = responseInfo?.responseId
val mediationAdapterClassName = responseInfo?.mediationAdapterClassName
val adapterResponses = responseInfo?.adapterResponses
val loadedAdapterResponseInfo = responseInfo?.loadedAdapterResponseInfo
val extras = 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")
}جاوا
@Override
public void onAdLoaded() {
ResponseInfo responseInfo = adView.getResponseInfo();
String responseId = responseInfo.getResponseId();
String mediationAdapterClassName = responseInfo.getMediationAdapterClassName();
List<AdapterResponseInfo> adapterResponses = responseInfo.getAdapterResponses();
AdapterResponseInfo loadedAdapterResponseInfo =
responseInfo.getLoadedAdapterResponseInfo();
Bundle extras = responseInfo.getResponseExtras();
String mediationGroupName = extras.getString("mediation_group_name");
String mediationABTestName = extras.getString("mediation_ab_test_name");
String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}اطلاعات پاسخ آداپتور
AdapterResponseInfo حاوی اطلاعات پاسخ برای یک منبع تبلیغاتی خاص در یک پاسخ تبلیغاتی است.
نمونه خروجی AdapterResponseInfo زیر، متادیتای یک تبلیغ بارگذاری شده را نشان میدهد:
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
}
برای هر منبع تبلیغ، AdapterResponseInfo متدهای زیر را ارائه میدهد:
| روش | توضیحات |
|---|---|
getAdError | خطای مرتبط با درخواست به منبع تبلیغ را دریافت میکند. اگر منبع تبلیغ با موفقیت یک تبلیغ را بارگذاری کند یا اگر تلاشی برای بارگذاری منبع تبلیغ انجام نشده باشد، null را برمیگرداند. |
getAdSourceId | شناسه منبع تبلیغ مرتبط با این پاسخ آداپتور را دریافت میکند. |
getAdSourceInstanceId | شناسه نمونه منبع تبلیغ مرتبط با این پاسخ آداپتور را دریافت میکند. |
getAdSourceInstanceName | نام نمونه منبع تبلیغ مرتبط با این پاسخ آداپتور را دریافت میکند. |
getAdSourceName | نام منبع تبلیغ مرتبط با این پاسخ آداپتور را دریافت میکند. |
getAdapterClassName | نام کلاس آداپتور منبع تبلیغاتی که تبلیغ را بارگذاری کرده است، برمیگرداند. |
getCredentials | اعتبارنامههای آداپتور منبع تبلیغ مشخصشده در رابط کاربری مدیر تبلیغات را دریافت میکند. |
getLatencyMillis | مقدار زمانی که آداپتور منبع تبلیغ صرف بارگذاری یک تبلیغ کرده است را برمیگرداند. اگر منبع تبلیغ امتحان نشده باشد، مقدار 0 را برمیگرداند. |
کاتلین
override fun onAdLoaded() {
val loadedAdapterResponseInfo = adView.responseInfo?.loadedAdapterResponseInfo
val adError = loadedAdapterResponseInfo?.adError
val adSourceId = loadedAdapterResponseInfo?.adSourceId
val adSourceInstanceId = loadedAdapterResponseInfo?.adSourceInstanceId
val adSourceInstanceName = loadedAdapterResponseInfo?.adSourceInstanceName
val adSourceName = loadedAdapterResponseInfo?.adSourceName
val adapterClassName = loadedAdapterResponseInfo?.adapterClassName
val credentials = loadedAdapterResponseInfo?.credentials
val latencyMillis = loadedAdapterResponseInfo?.latencyMillis
}جاوا
@Override
public void onAdLoaded() {
AdapterResponseInfo loadedAdapterResponseInfo =
adView.getResponseInfo().getLoadedAdapterResponseInfo();
AdError adError = loadedAdapterResponseInfo.getAdError();
String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();
String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
String adapterClassName = loadedAdapterResponseInfo.getAdapterClassName();
Bundle credentials = loadedAdapterResponseInfo.getCredentials();
long latencyMillis = loadedAdapterResponseInfo.getLatencyMillis();
}