بازیابی اطلاعات درباره پاسخ آگهی

برای اهداف اشکال‌زدایی و ثبت گزارش، آگهی‌های باموفقیت بارشده یک شیء ResponseInfo ارائه می‌دهند. این شیء حاوی اطلاعاتی درباره آگهی بارشده است، علاوه‌بر اطلاعاتی درباره آبشار میانجی‌گری استفاده‌شده برای بار کردن آگهی.

برای مواردی که آگهی با موفقیت بار می‌شود، شیء آگهی دارای یک getResponseInfo() روش است. برای مثال، InterstitialAd.getResponseInfo() اطلاعات پاسخ را برای آگهی بینابینی بارشده دریافت می‌کند.

در مواردی که آگهی‌ها بار نمی‌شوند و فقط خطا دردسترس است، اطلاعات پاسخ ازطریق LoadAdError.getResponseInfo() دردسترس است.

Kotlin

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": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
  "Adapter Responses": [
    {
      "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
      "Latency": 328,
      "Ad Source Name": "Reservation campaign",
      "Ad Source ID": "7068401028668408324",
      "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
      "Ad Source Instance ID": "4665218928925097",
      "Credentials": {},
      "Ad Error": "null"
    }
  ],
  "Loaded Adapter Response": {
    "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
    "Latency": 328,
    "Ad Source Name": "Reservation campaign",
    "Ad Source ID": "7068401028668408324",
    "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
    "Ad Source Instance ID": "4665218928925097",
    "Credentials": {},
    "Ad Error": "null"
  },
  "Response Extras": {
    "mediation_group_name": "Campaign"
  }
}

روش‌های موجود در شیء ResponseInfo شامل موارد زیر است:

روش شرح
getAdapterResponses فهرست AdapterResponseInfo را برمی‌گرداند که حاوی فراداده برای هر آداپتور موجود در پاسخ آگهی است. می‌تواند برای اشکال‌زدایی میانجی‌گری آبشاری و اجرای پیشنهاد قیمت استفاده شود. ترتیب فهرست با ترتیب آبشار میانجی‌گری برای این درخواست آگهی مطابقت دارد.

برای اطلاعات بیشتر، به اطلاعات پاسخ آداپتور مراجعه کنید.

getLoadedAdapterResponseInfo AdapterResponseInfo مربوط به آداپتوری را که آگهی را بار کرده است برمی‌گرداند.
getMediationAdapterClassName نام کلاس آداپتور میانجی منبع آگهی را که آگهی را بار کرده است برمی‌گرداند.
getResponseId شناسه پاسخ، شناسه یکتایی برای پاسخ آگهی است. از این شناسه می‌توان برای شناسایی و مسدود کردن آگهی در مرکز بازبینی آگهی (ARC) استفاده کرد.
getResponseExtras اطلاعات بیشتری درباره پاسخ آگهی برمی‌گرداند. Extras ممکن است کلیدهای زیر را برگرداند:
  • ‫mediation_group_name: نام گروه میانجی‌گری
  • mediation_ab_test_name: نام آزمون آ/ب میانجی‌گری، درصورت وجود
  • mediation_ab_test_variant: متغیر استفاده‌شده در آزمون آ/ب میانجی‌گری، درصورت وجود

Kotlin

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": 328,
  "Ad Source Name": "Reservation campaign",
  "Ad Source ID": "7068401028668408324",
  "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
  "Ad Source Instance ID": "4665218928925097",
  "Credentials": {},
  "Ad Error": "null"
}

برای هر منبع آگهی، AdapterResponseInfo روش‌های زیر را ارائه می‌دهد:

روش شرح
getAdError خطای مرتبط با درخواست به منبع آگهی را دریافت می‌کند. اگر منبع آگهی با موفقیت آگهی را بار کند یا اگر منبع آگهی امتحان نشده باشد، null را برمی‌گرداند.
getAdSourceId شناسه منبع آگهی مرتبط با این پاسخ آداپتور را دریافت می‌کند. برای پویش‌ها، 6060308706800320801 برای نوع هدف پویش آگهی‌های میانجی‌شده برگردانده می‌شود، و 7068401028668408324 برای انواع هدف ظهور و کلیک برگردانده می‌شود. برای مشاهده فهرست شناسه‌های احتمالی منبع آگهی وقتی منبع آگهی آگهی را ارائه می‌دهد، به منابع آگهی مراجعه کنید.
getAdSourceInstanceId شناسه نمونه منبع آگهی مرتبط با این پاسخ آداپتور را دریافت می‌کند.
getAdSourceInstanceName نام نمونه منبع آگهی مرتبط با این پاسخ آداپتور را دریافت می‌کند.
getAdSourceName نام منبع آگهی مرتبط با این پاسخ آداپتور را دریافت می‌کند. برای پویش‌ها، Mediated House Ads برای نوع هدف پویش آگهی‌های میانجی‌شده برگردانده می‌شود، و Reservation Campaign برای انواع هدف ظهور و کلیک برگردانده می‌شود. برای مشاهده فهرست نام‌های احتمالی منبع آگهی وقتی منبع آگهی آگهی را ارائه می‌دهد، به منابع آگهی مراجعه کنید.
getAdapterClassName نام کلاس آداپتور منبع آگهی را که آگهی را بار کرده است دریافت می‌کند.
getCredentials اعتبارنامه آداپتور منبع آگهی مشخص‌شده در میانای کاربری AdMob را دریافت می‌کند.
getLatencyMillis مدت زمانی را که آداپتور منبع آگهی صرف بار کردن آگهی کرده است دریافت می‌کند. اگر منبع آگهی امتحان نشده باشد، 0 را برمی‌گرداند.

Kotlin

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