ดึงข้อมูลเกี่ยวกับการตอบกลับของโฆษณา

เลือกแพลตฟอร์ม: Android ใหม่ Android iOS Unity Flutter

ระบบจะแสดงออบเจ็กต์ ResponseInfo สำหรับโฆษณาที่โหลดสำเร็จเพื่อวัตถุประสงค์ในการแก้ไขข้อบกพร่องและการบันทึก ออบเจ็กต์นี้มีข้อมูลเกี่ยวกับโฆษณาที่โหลด รวมถึงข้อมูลเกี่ยวกับการแสดงโฆษณาสื่อกลางตามลำดับขั้นที่ใช้โหลดโฆษณา

ในกรณีที่โหลดโฆษณาได้สำเร็จ ออบเจ็กต์โฆษณาจะมีเมธอด GetResponseInfo() เช่น InterstitialAd.GetResponseInfo() จะดึงข้อมูลการตอบกลับสำหรับโฆษณาคั่นระหว่างหน้าที่โหลดแล้ว

ในกรณีที่โหลดโฆษณาไม่สำเร็จและมีเพียงข้อผิดพลาดเท่านั้น ข้อมูลการตอบกลับจะพร้อมใช้งานผ่าน AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo()

InterstitialAd ad;

private void RequestInterstitial()
{
    ad = new InterstitialAd("AD_UNIT_ID");
    this.interstitial.OnAdLoaded += OnAdLoaded;
    this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
    AdRequest request = new AdRequest.Builder().Build();
    this.interstitial.LoadAd(request);
}

private void OnAdLoaded(object sender, EventArgs args)
{
    ResponseInfo info = ad.GetResponseInfo();
}

private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
    ResponseInfo info = args.LoadAdError.GetResponseInfo();
}

ข้อมูลการตอบกลับ

ต่อไปนี้เป็นเอาต์พุตตัวอย่างที่แสดงผลโดย ResponseInfo.ToString() ซึ่งแสดงข้อมูลการแก้ไขข้อบกพร่องที่แสดงผลสำหรับโฆษณาที่โหลดแล้ว

Android

{
  "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-app-pub-3940256099942544\/9257395921\/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
    },
    "Ad Error": "null"
  },
  "Response Extras": {
    "creative_id": "138471856178",
    "line_item_id": "6707237225",
  }
}

iOS

** Response Info **
    Response ID: BmnCZaSbE_6Mur8P5su8gAY
    Network: GADMAdapterGoogleAdMobAds

  ** Loaded Adapter Response **
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name:AdMob Network
    Ad Source ID:
    Ad Source Instance Name:AdMob (default)
    Ad Source Instance ID:AdMob (default)
    AdUnitMapping:
{
    pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
    Error: (null)
    Latency: 2.724

  ** Extras Dictionary **
    {
        "creative_id" = "138471856178";
        "line_item_id" = "6707237225";
    }

  ** Mediation line items **
    Entry (1)
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name:AdMob Network
    Ad Source ID:
    Ad Source Instance Name:AdMob (default)
    Ad Source Instance ID:AdMob (default)
    AdUnitMapping:
{
    pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
    Error: (null)
    Latency: 2.724

เมธอดในออบเจ็กต์ ResponseInfo ได้แก่

วิธีการ คำอธิบาย
GetAdapterResponses แสดงรายการ AdapterResponseInfo ที่มีข้อมูลเมตา สำหรับอะแดปเตอร์แต่ละรายการที่รวมอยู่ในการตอบกลับของโฆษณา สามารถใช้เพื่อแก้ไขข้อบกพร่องของ การแสดงโฆษณาสื่อกลางตามลำดับขั้นและการดำเนินการเสนอราคา ลำดับในรายการจะตรงกับ ลำดับของการแสดงโฆษณาสื่อกลางตามลำดับขั้นสำหรับคำขอโฆษณานี้

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลการตอบกลับของอะแดปเตอร์สำหรับข้อมูลเพิ่มเติม

GetLoadedAdapterResponseInfo แสดง AdapterResponseInfo ที่สอดคล้องกับอะแดปเตอร์ ที่โหลดโฆษณา
GetMediationAdapterClassName แสดงชื่อคลาสอะแดปเตอร์สื่อกลางของเครือข่ายโฆษณาที่โหลดโฆษณา
GetResponseId ตัวระบุการตอบกลับเป็นตัวระบุที่ไม่ซ้ำกันสำหรับการตอบกลับของโฆษณา คุณใช้ตัวระบุนี้เพื่อระบุและบล็อกโฆษณาได้ในศูนย์ตรวจสอบโฆษณา (ARC)
GetResponseExtras แสดงข้อมูลเพิ่มเติมเกี่ยวกับการตอบกลับของโฆษณา ข้อมูลเพิ่มเติมสามารถแสดงผลคีย์ต่อไปนี้
  • creative_id: รหัสครีเอทีฟโฆษณาของโฆษณาที่เลือก แสดงผล สำหรับโฆษณาแบบจองเท่านั้น
  • line_item_id: รหัสสินค้าในรายการสั่งซื้อของโฆษณาที่เลือก แสดงผลสำหรับโฆษณาแบบจองเท่านั้น

ต่อไปนี้เป็นตัวอย่างการอ่านค่าจาก ResponseInfo ที่โหลดแล้ว

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo info = ad.GetResponseInfo();

  string responseId = responseInfo.GetResponseId();
  string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
  Dictionary<string, string> extras = responseInfo.GetResponseExtras();
  string creativeId = extras["creative_id"];
  string lineItemId = extras["line_item_id"];
}

ข้อมูลการตอบกลับของอะแดปเตอร์

AdapterResponseInfo มีข้อมูลเมตาสำหรับอะแดปเตอร์แต่ละรายการที่รวมอยู่ในการตอบกลับโฆษณา ซึ่งสามารถใช้เพื่อแก้ไขข้อบกพร่องของการแสดงโฆษณาสื่อกลางตามลำดับขั้นและการดำเนินการเสนอราคา ลำดับในรายการจะตรงกับลำดับของการแสดงโฆษณาสื่อกลางตามลำดับขั้นสำหรับคำขอโฆษณา

ต่อไปนี้เป็นเอาต์พุตตัวอย่างที่แสดงผลโดย AdapterResponseInfo

Android

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

iOS

  Network: GADMAdapterGoogleAdMobAds
  Ad Source Name: Reservation campaign
  Ad Source ID: 7068401028668408324
  Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
  Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
  AdUnitMapping:
  {
  }
  Error: (null)
  Latency: 0.391

สำหรับเครือข่ายโฆษณาแต่ละเครือข่าย AdapterResponseInfo จะมีเมธอดต่อไปนี้

วิธีการ คำอธิบาย
AdError รับข้อผิดพลาดที่เชื่อมโยงกับคำขอไปยังเครือข่าย แสดงผล null หากเครือข่ายโหลดโฆษณาได้สำเร็จหรือหากไม่ได้ลองใช้เครือข่าย
AdSourceId รับรหัสแหล่งที่มาของโฆษณาที่เชื่อมโยงกับการตอบกลับของอะแดปเตอร์นี้ สำหรับแคมเปญ 6060308706800320801 จะแสดงผลสำหรับโฆษณาสื่อกลาง ประเภทเป้าหมายของแคมเปญ และ 7068401028668408324 จะแสดงผลสำหรับประเภทเป้าหมายการแสดงผลและการคลิก ดูรายการรหัสแหล่งที่มาของโฆษณาที่เป็นไปได้เมื่อเครือข่ายโฆษณาแสดงโฆษณา
AdSourceInstanceId รับรหัสอินสแตนซ์แหล่งที่มาของโฆษณาที่เชื่อมโยงกับการตอบกลับของอะแดปเตอร์นี้
AdSourceInstanceName รับชื่ออินสแตนซ์แหล่งที่มาของโฆษณาที่เชื่อมโยงกับการตอบกลับของอะแดปเตอร์นี้
AdSourceName รับแหล่งที่มาของโฆษณาที่แสดงเครือข่ายโฆษณาเฉพาะที่แสดง การแสดงผล สำหรับแคมเปญ ระบบจะแสดงผล Mediated House Ads สำหรับประเภทเป้าหมายของแคมเปญโฆษณาสื่อกลาง และ Reservation Campaign สำหรับประเภทเป้าหมายการแสดงผลและการคลิก ดูรายการชื่อแหล่งที่มาของโฆษณาที่เป็นไปได้เมื่อเครือข่ายโฆษณาแสดงโฆษณา
AdapterClassName รับชื่อคลาสที่ระบุเครือข่ายโฆษณา
AdUnitMapping รับการกำหนดค่าเครือข่ายที่ตั้งค่าจาก UI ของ AdMob
LatencyMillis รับระยะเวลาที่เครือข่ายโฆษณาใช้ในการโหลดโฆษณา แสดงผล 0 หากไม่ได้ลองใช้เครือข่าย

ต่อไปนี้เป็นตัวอย่างการอ่านค่าจาก AdapterResponseInfo ที่โหลดแล้ว

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo responseInfo = ad.GetResponseInfo();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.AdError;
  string adSourceId = loadedAdapterResponseInfo.AdSourceId;
  string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
  string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
  string adSourceName = loadedAdapterResponseInfo.AdSourceName;
  string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
  Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
  long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}