বিজ্ঞাপন সংক্রান্ত উত্তরের ব্যাপারে তথ্য পাওয়া

কোনও বিজ্ঞাপন লোড হওয়ার পরে বা লোড হতে না পারলে, ResponseInfo অবজেক্টটি পরীক্ষা করুন। এই অবজেক্টে লোড করা বিজ্ঞাপন এবং অনুরোধ প্রসেস করার জন্য ব্যবহৃত মিডিয়েশন ওয়াটারফল সম্পর্কে মেটাডেটার বিবরণ থাকে।

বিজ্ঞাপন লোড হয়ে গেলে, বিজ্ঞাপন ইনস্ট্যান্সে একটি getResponseInfo পদ্ধতি থাকে। যেমন, interstitialAd.getResponseInfo পদ্ধতি লোড করা InterstitialAd অবজেক্টের জন্য রেসপন্স সংক্রান্ত তথ্য ফিরিয়ে দেয়।

কোনও বিজ্ঞাপন লোড না হলে, LoadAdError অবজেক্টে ঐচ্ছিক responseInfo প্রপার্টি অ্যাক্সেস করুন, যেমন, error.responseInfo।

উত্তরের তথ্য অবজেক্টটি পরীক্ষা করুন

ResponseInfo অবজেক্ট বিজ্ঞাপনের অনুরোধ থেকে ফেরত আসা ডায়াগনস্টিক বিবরণ প্রদান করে।

নিচের উদাহরণে লোড করা বিজ্ঞাপনের জন্য রেসপন্স সংক্রান্ত তথ্য আউটপুট দেখানো হয়েছে:

Android

{
  "responseId": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "responseExtras": {},
  "loadedAdSourceResponseInfo": {
    "adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
    "latencyMillis": 328,
    "name": "Reservation campaign",
    "id": "7068401028668408324",
    "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
    "instanceId": "4665218928925097",
    "credentials": {},
    "mediationAdError": null
  },
  "adSourceResponses": [
    {
      "adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
      "latencyMillis": 328,
      "name": "Reservation campaign",
      "id": "7068401028668408324",
      "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
      "instanceId": "4665218928925097",
      "credentials": {},
      "mediationAdError": null
    }
  ]
}

iOS

{
  "responseId": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "responseExtras": {},
  "loadedAdSourceResponseInfo": {
    "adapterClassName": "GADMAdapterGoogleAdMobAds",
    "latencyMillis": 328,
    "name": "Reservation campaign",
    "id": "7068401028668408324",
    "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
    "instanceId": "4665218928925097",
    "credentials": {},
    "mediationAdError": null
  },
  "adSourceResponses": [
    {
      "adapterClassName": "GADMAdapterGoogleAdMobAds",
      "latencyMillis": 328,
      "name": "Reservation campaign",
      "id": "7068401028668408324",
      "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
      "instanceId": "4665218928925097",
      "credentials": {},
      "mediationAdError": null
    }
  ]
}

ResponseInfo অবজেক্ট নিম্নলিখিত প্রপার্টি প্রদান করে:

প্রপার্টি ধরন বিবরণ
adSourceResponses readonly AdSourceResponseInfo[] মিডিয়েশন ওয়াটারফলে প্রতিটি বিজ্ঞাপন সোর্স প্রচেষ্টার প্রতিনিধিত্বকারী AdSourceResponseInfo অবজেক্টের তালিকা।
loadedAdSourceResponseInfo AdSourceResponseInfo | undefined বিজ্ঞাপন সোর্স অ্যাডাপ্টারের জন্য মেটাডেটা যা বিজ্ঞাপনটি সফলভাবে লোড করেছে। বিজ্ঞাপন লোড না হলে, এই ভ্যালু হল undefined।
responseExtras Readonly<Record<string, unknown>> বিজ্ঞাপনের উত্তর থেকে পাওয়া অতিরিক্ত মেটাডেটা, যেমন mediation_group_name কী।
responseId string বিজ্ঞাপন সংক্রান্ত উত্তরের জন্য অনন্য শনাক্তকারী। বিজ্ঞাপন পর্যালোচনা কেন্দ্র (ARC)-এ ব্লক করা বিজ্ঞাপন শনাক্ত করতে এই আইডি ব্যবহার করুন।

বিজ্ঞাপন সোর্স রেসপন্স সংক্রান্ত তথ্য পড়ুন

AdSourceResponseInfo অবজেক্ট, বিজ্ঞাপনের উত্তরে অন্তর্ভুক্ত অ্যাডাপ্টারের জন্য মেটাডেটা প্রদান করে। এই অবজেক্টগুলি মিডিয়েশন ওয়াটারফলে প্রতিটি বিজ্ঞাপন সোর্সের কলিং অর্ডার অনুযায়ী তালিকাভুক্ত করা হয়।

নিম্নলিখিত উদাহরণে লোড করা বিজ্ঞাপনের জন্য বিজ্ঞাপন সোর্স রেসপন্স সংক্রান্ত তথ্য আউটপুট দেখানো হয়েছে:

Android

{
  "adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
  "latencyMillis": 328,
  "name": "Reservation campaign",
  "id": "7068401028668408324",
  "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
  "instanceId": "4665218928925097",
  "credentials": {},
  "mediationAdError": null
}

iOS

{
  "adapterClassName": "GADMAdapterGoogleAdMobAds",
  "latencyMillis": 328,
  "name": "Reservation campaign",
  "id": "7068401028668408324",
  "instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
  "instanceId": "4665218928925097",
  "credentials": {},
  "mediationAdError": null
}

প্রতিটি বিজ্ঞাপন সোর্সের জন্য, AdSourceResponseInfo নিম্নলিখিত প্রপার্টি প্রদান করে:

প্রপার্টি ধরন বিবরণ
adapterClassName string বিজ্ঞাপন নেটওয়ার্ক অ্যাডাপ্টারের ক্লাস নেম।
credentials Readonly<Record<string, string>> এই অ্যাডাপ্টারের জন্য AdMob UI-তে সার্ভার-সাইড প্যারামিটার কনফিগার করা হয়েছে।
id string বিজ্ঞাপন সোর্সের অনন্য আইডি।
instanceId string বিজ্ঞাপন সোর্স ইনস্ট্যান্সের অনন্য আইডি।
instanceName string বিজ্ঞাপন সোর্স ইন্সট্যান্সের নাম।
latencyMillis number নেটওয়ার্কের সাথে কানেক্ট করার জন্য মিলিসেকেন্ডে সময়।
mediationAdError MediationAdError | undefined নেটওয়ার্কের চেষ্টা ব্যর্থ হলে, এই প্রপার্টি সমস্যার বিবরণ দেয়। সফল হলে, এই ভ্যালু হল undefined।
name string বিজ্ঞাপন সোর্সের নাম, যেমন, "Reservation campaign"।

সম্পূর্ণ উত্তর সংক্রান্ত তথ্য লগ করুন

এই বিভাগে লোড করা বিজ্ঞাপনের জন্য সম্পূর্ণ উত্তর সংক্রান্ত তথ্য পরীক্ষা করার জন্য একটি ইমপ্লিমেন্টেশন কভার করা হয়েছে।

বিজ্ঞাপন লোড হলে বা লোড হতে না পারলে, নিম্নলিখিত উদাহরণটি রেসপন্স সংক্রান্ত তথ্য লগ ও পরীক্ষা করে:

import {InterstitialAd, LoadAdError} from '@google/mobile-ads';
import type {AdSourceResponseInfo, ResponseInfo} from '@google/mobile-ads';

export async function logResponseInfo(adUnitId: string): Promise<void> {
  try {
    const interstitial = await InterstitialAd.load({adUnitId});
    const responseInfo: ResponseInfo = interstitial.getResponseInfo();

    console.log('Ad Loaded Response ID:', responseInfo.responseId);
    console.log(
      'Loaded Adapter Class Name:',
      responseInfo.loadedAdSourceResponseInfo?.adapterClassName,
    );

    // Inspect each ad source response in the mediation waterfall
    responseInfo.adSourceResponses.forEach(
      (adSourceResponse: AdSourceResponseInfo, index: number) => {
        console.log(
          `Waterfall index ${index}:`,
          adSourceResponse.adapterClassName,
          `Latency: ${adSourceResponse.latencyMillis}ms`,
          adSourceResponse.mediationAdError
            ? `Error: ${adSourceResponse.mediationAdError.message}`
            : 'Success',
        );
      },
    );
  } catch (error) {
    if (error instanceof LoadAdError) {
      console.error('Ad failed to load:', error.message);
      if (error.responseInfo) {
        console.log('Failed Response ID:', error.responseInfo.responseId);
      }
    }
  }
}