استرداد المعلومات المتعلقة باستجابة الإعلان

لأغراض تصحيح الأخطاء وتسجيلها، تقدّم الإعلانات التي تم تحميلها بنجاح عنصر ResponseInfo. يحتوي هذا العنصر على معلومات حول الإعلان الذي تم تحميله، بالإضافة إلى معلومات حول التوسّط للعروض الإعلانية بدون انقطاع المستخدَم لتحميل الإعلان.

في الحالات التي يتم فيها تحميل الإعلان بنجاح، يحتوي عنصر الإعلان على طريقة getResponseInfo(). على سبيل المثال، InterstitialAd.getResponseInfo() يحصل على معلومات الاستجابة لإعلان بيني تم تحميله.

في الحالات التي يتعذّر فيها تحميل الإعلانات ويتوفّر خطأ فقط، يمكن الحصول على معلومات الرد من خلال LoadAdError.getResponseInfo().

Kotlin

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

Java

@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 ما يلي:

الطريقة الوصف
getAdapterResponses تعرض هذه السمة قائمة AdapterResponseInfo تتضمّن البيانات الوصفية لكل وسيط مدرَج في ردّ الإعلان. يمكن استخدامها لتصحيح أخطاء التوسّط المستند إلى العرض بدون انقطاع وتنفيذ عروض الأسعار. يتطابق ترتيب القائمة مع ترتيب تدفّق التوسّط لطلب الإعلان هذا.

راجِع معلومات ردّ وسيط الإعلانات للحصول على مزيد من المعلومات.

getLoadedAdapterResponseInfo تعرِض هذه السمة AdapterResponseInfo المناظر للمحوّل الذي حمّل الإعلان.
getMediationAdapterClassName تعرِض هذه السمة اسم فئة وسيط التوسّط لمصدر الإعلان الذي حمّل الإعلان.
getResponseId معرّف الاستجابة هو معرّف فريد لاستجابة الإعلان. يمكن استخدام هذا المعرّف لتحديد الإعلان وحظره في مركز مراجعة الإعلانات.
getResponseExtras تعرض هذه السمة معلومات إضافية عن استجابة الإعلان. قد تعرض الخدمات الإضافية المفاتيح التالية:
  • mediation_group_name: اسم مجموعة التوسّط
  • mediation_ab_test_name: اسم اختبار A/B للتوسّط، إذا كان ذلك منطبقًا
  • mediation_ab_test_variant: الصيغة المستخدَمة في اختبار أ/ب للتوسّط، إذا كان ذلك منطبقًا

Kotlin

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

Java

@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();
  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(interstitialAd: InterstitialAds) {
  val loadedAdapterResponseInfo = interstitialAd.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
}

Java

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