برای اهداف اشکال زدایی و ورود به سیستم، تبلیغات با موفقیت بارگذاری شده یک شی ResponseInfo
را ارائه می دهند. این شیء حاوی اطلاعاتی در مورد تبلیغی است که بارگذاری کرده است، علاوه بر اطلاعات مربوط به آبشار میانجی که برای بارگذاری آگهی استفاده شده است.
برای مواردی که تبلیغ با موفقیت بارگیری می شود، شیء تبلیغ دارای یک متد getResponseInfo()
است. برای مثال، InterstitialAd.getResponseInfo()
اطلاعات پاسخ را برای یک تبلیغ بینابینی بارگذاری شده دریافت می کند.
برای مواردی که تبلیغات بارگیری نمی شوند و فقط یک خطا در دسترس است، اطلاعات پاسخ از طریق LoadAdError.getResponseInfo()
در دسترس است.
جاوا
@Override public void onAdLoaded(@NonNull InterstitialAd interstitialAd) { ResponseInfo responseInfo = interstitialAd.getResponseInfo(); Log.d(TAG, responseInfo.toString()); } @Override public void onAdFailedToLoad(LoadAdError loadAdError) { ResponseInfo responseInfo = loadAdError.getResponseInfo(); Log.d(TAG, responseInfo.toString()); }
کاتلین
override fun onAdLoaded(interstitialAd: InterstitialAd)) { val responseInfo = interstitialAd.responseInfo Log.d(TAG, responseInfo.toString()) } override fun onAdFailedToLoad(adError: LoadAdError) { val responseInfo = adError.responseInfo 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-pub-9939518381636264//21775744923/example/rewarded_interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
},
"Response Extras": {}
}
متدهای موجود در شی ResponseInfo
عبارتند از:
روش | شرح |
---|---|
getAdapterResponses | فهرستی از AdapterResponseInfo حاوی فراداده برای هر آداپتور موجود در پاسخ آگهی را برمیگرداند. می توان از آن برای رفع اشکال میانجی گری آبشار و اجرای مناقصه استفاده کرد. ترتیب فهرست با ترتیب آبشار میانجی برای این درخواست آگهی مطابقت دارد.برای اطلاعات بیشتر به اطلاعات پاسخ آداپتور مراجعه کنید. |
getLoadedAdapterResponseInfo | AdapterResponseInfo مربوط به آداپتوری که آگهی را بارگیری کرده است، برمی گرداند. |
getMediationAdapterClassName | نام کلاس آداپتور میانجی شبکه تبلیغاتی را که آگهی را بارگیری کرده است، برمیگرداند. |
getResponseId | شناسه پاسخ یک شناسه منحصر به فرد برای پاسخ آگهی است. از این شناسه می توان برای شناسایی و مسدود کردن آگهی در مرکز بررسی تبلیغات (ARC) استفاده کرد. |
getResponseExtras | اطلاعات اضافی درباره پاسخ آگهی را برمی گرداند. |
جاوا
@Override public void onAdLoaded(@NonNull InterstitialAd interstitialAd) { MyActivity.this.interstitialAd = interstitialAd; ResponseInfo responseInfo = interstitialAd.getResponseInfo(); String responseId = responseInfo.getResponseId(); String mediationAdapterClassName = responseInfo.getMediationAdapterClassName(); List<AdapterResponseInfo> adapterResponses = responseInfo.getAdapterResponses(); AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo(); }
کاتلین
override fun onAdLoaded(interstitialAd: InterstitialAd)) { val responseInfo = interstitialAd.responseInfo val responseId = responseInfo.responseId val mediationAdapterClassName = responseInfo.mediationAdapterClassName val adapterResponses = responseInfo.adapterResponses val loadedAdapterResponseInfo = responseInfo.loadedAdapterResponseInfo }
اطلاعات پاسخ آداپتور
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 | مجموعه پیکربندی شبکه را از رابط کاربری Ad Manager دریافت می کند. |
getLatencyMillis | مقدار زمانی را که شبکه تبلیغات برای بارگذاری یک تبلیغ صرف کرده است را دریافت می کند. در صورت عدم تلاش برای شبکه، 0 را برمی گرداند. |
جاوا
@Override public void onAdLoaded(@NonNull InterstitialAd interstitialAd) { AdapterResponseInfo loadedAdapterResponseInfo = interstitialAd.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(); }
کاتلین
override fun onAdLoaded(interstitialAd: InterstitialAds) { val loadedAdapterResponseInfo = interstitialAd.responseInfo.loadedAdapterResponse 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 }