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

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

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

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

کاتلین

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

جاوا

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

اطلاعات پاسخ

در اینجا خروجی نمونه ای است که توسط 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 شامل موارد زیر است:

روش توضیحات
getAdSourceResponses فهرستی از AdSourceResponseInfo حاوی فراداده برای هر منبع آگهی موجود در پاسخ آگهی را برمی‌گرداند. می توان از آن برای رفع اشکال میانجی گری آبشار و اجرای مناقصه استفاده کرد. ترتیب فهرست با ترتیب آبشار میانجی برای این درخواست آگهی مطابقت دارد.

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

getLoadedAdSourceResponse AdSourceResponseInfo مربوط به منبع تبلیغی را که آگهی را بارگیری کرده است برمی گرداند.
getAdapterClassName نام کلاس آداپتور میانجی منبع تبلیغی را که آگهی را بارگیری کرده است، برمی‌گرداند.
getResponseId شناسه پاسخ یک شناسه منحصر به فرد برای پاسخ آگهی است. از این شناسه می توان برای شناسایی و مسدود کردن آگهی در مرکز بررسی آگهی (ARC) استفاده کرد.
getResponseExtras اطلاعات اضافی درباره پاسخ آگهی را برمی گرداند. موارد اضافی ممکن است کلیدهای زیر را برگردانند:
  • mediation_group_name : نام گروه میانجیگری
  • mediation_ab_test_name : نام آزمون میانجی A/B ، در صورت وجود
  • mediation_ab_test_variant : نوع مورد استفاده در آزمون میانجی A/B، در صورت وجود

کاتلین

override fun onAdLoaded(interstitialAd: InterstitialAd) {
  val responseInfo = interstitialAd.responseInfo

  val responseId = responseInfo.responseId
  val adapterClassName = responseInfo.adapterClassName
  val adSourceResponses = responseInfo.adSourceResponses
  val loadedAdSourceResponse = responseInfo.loadedAdSourceResponse
  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(@NonNull InterstitialAd interstitialAd) {
  MyActivity.this.interstitialAd = interstitialAd;

  ResponseInfo responseInfo = interstitialAd.getResponseInfo();
  String responseId = responseInfo.getResponseId();
  String adapterClassName = responseInfo.getAdapterClassName();
  List<AdSourceResponseInfo> adSourceResponses = responseInfo.getAdSourceResponses();
  AdSourceResponseInfo loadedAdSourceResponse = responseInfo.getLoadedAdSourceResponse();
  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");
}

اطلاعات پاسخ منبع آگهی

AdSourceResponseInfo حاوی اطلاعات پاسخ برای یک منبع آگهی فردی در پاسخ آگهی است.

نمونه خروجی AdSourceResponseInfo زیر، فراداده یک آگهی بارگذاری شده را نشان می دهد:

{
  "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"
}

برای هر منبع تبلیغ، AdSourceResponseInfo روش های زیر را ارائه می دهد:

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

کاتلین

override fun onAdLoaded(interstitialAd: InterstitialAds) {
  val loadedAdSourceResponseInfo = interstitialAd.responseInfo.loadedAdSourceResponse

  val adError = loadedAdSourceResponseInfo.adError
  val adSourceId = loadedAdSourceResponseInfo.id
  val adSourceInstanceId = loadedAdSourceResponseInfo.instanceId
  val adSourceInstanceName = loadedAdSourceResponseInfo.instanceName
  val adSourceName = loadedAdSourceResponseInfo.name
  val adapterClassName = loadedAdSourceResponseInfo.adapterClassName
  val credentials = loadedAdSourceResponseInfo.credentials
  val latencyMillis = loadedAdSourceResponseInfo.latencyMillis
}

جاوا

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  AdSourceResponseInfo loadedAdSourceResponseInfo =
      interstitialAd.getResponseInfo().getLoadedAdSourceResponse();

  AdError adError = loadedAdSourceResponseInfo.getAdError();
  String adSourceId = loadedAdSourceResponseInfo.getId();
  String adSourceInstanceId = loadedAdSourceResponseInfo.getInstanceId();
  String adSourceInstanceName = loadedAdSourceResponseInfo.getInstanceName();
  String adSourceName = loadedAdSourceResponseInfo.getName();
  String adapterClassName = loadedAdSourceResponseInfo.getAdapterClassName();
  Bundle credentials = loadedAdSourceResponseInfo.getCredentials();
  long latencyMillis = loadedAdSourceResponseInfo.getLatencyMillis();
}