รายได้จากโฆษณาระดับการแสดงผล

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

เมื่อเกิดการแสดงผล Google Mobile Ads SDK จะให้ข้อมูลรายได้จากโฆษณา ที่เชื่อมโยงกับการแสดงผลนั้น คุณสามารถใช้ข้อมูลเพื่อคำนวณมูลค่าตลอดช่วงชีวิตของผู้ใช้ หรือส่งต่อข้อมูลไปยังระบบอื่นๆ ที่เกี่ยวข้องได้

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

ข้อกำหนดเบื้องต้น

  • นำเข้า SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 21.1.0 ขึ้นไป

โฆษณาแต่ละรูปแบบมี OnPaidEventListener ในระหว่างวงจรของเหตุการณ์โฆษณา Google Mobile Ads SDK จะตรวจสอบ เหตุการณ์การแสดงผลและเรียกใช้แฮนเดิลด้วยมูลค่าที่ได้รับ

ตัวอย่างต่อไปนี้จัดการเหตุการณ์ที่ต้องชำระเงินสำหรับโฆษณาที่มีการให้รางวัล

Java

private void setOnPaidEventListener(RewardedAd ad) {
  ad.setOnPaidEventListener(
      new OnPaidEventListener() {
        @Override
        public void onPaidEvent(@NonNull AdValue adValue) {
          // Extract the impression-level ad revenue data.
          long valueMicros = adValue.getValueMicros();
          String currencyCode = adValue.getCurrencyCode();
          int precision = adValue.getPrecisionType();

          // Get the ad unit ID.
          String adUnitId = ad.getAdUnitId();

          // Extract ad response information.
          AdapterResponseInfo loadedAdapterResponseInfo =
              ad.getResponseInfo().getLoadedAdapterResponseInfo();
          if (loadedAdapterResponseInfo != null) {
            String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
            String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
            String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
            String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();

            Bundle extras = ad.getResponseInfo().getResponseExtras();
            String mediationGroupName = extras.getString("mediation_group_name");
            String mediationABTestName = extras.getString("mediation_ab_test_name");
            String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
          }
        }
      });
}

Kotlin

private fun setOnPaidEventListener(ad: RewardedAd) {
  ad.onPaidEventListener = OnPaidEventListener { adValue ->
    // Extract the impression-level ad revenue data.
    val valueMicros = adValue.valueMicros
    val currencyCode = adValue.currencyCode
    val precision = adValue.precisionType

    // Get the ad unit ID.
    val adUnitId = ad.adUnitId

    // Extract ad response information.
    val loadedAdapterResponseInfo = ad.responseInfo.loadedAdapterResponseInfo
    val adSourceName = loadedAdapterResponseInfo?.adSourceName
    val adSourceId = loadedAdapterResponseInfo?.adSourceId
    val adSourceInstanceName = loadedAdapterResponseInfo?.adSourceInstanceName
    val adSourceInstanceId = loadedAdapterResponseInfo?.adSourceInstanceId
    val extras = ad.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")
  }
}

ระบุชื่อแหล่งที่มาของโฆษณาเหตุการณ์ที่กำหนดเอง

สําหรับแหล่งที่มาของโฆษณาเหตุการณ์ที่กําหนดเอง เมธอด getAdSourceName() จะแสดงชื่อแหล่งที่มาของโฆษณา Custom event หากคุณใช้เหตุการณ์ที่กำหนดเองหลายรายการ ชื่อแหล่งที่มาของโฆษณาจะมีความละเอียดไม่เพียงพอที่จะแยกความแตกต่างระหว่างเหตุการณ์ที่กำหนดเองหลายรายการ หากต้องการค้นหาเหตุการณ์ที่กําหนดเองที่เฉพาะเจาะจง ให้ทําดังนี้

  1. เรียกใช้เมธอด getAdSourceName()
  2. ตั้งชื่อแหล่งที่มาของโฆษณาที่ไม่ซ้ำกัน

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

Java

private String getUniqueAdSourceName(@NonNull AdapterResponseInfo loadedAdapterResponseInfo) {

  String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
  if (adSourceName.equals("Custom Event")) {
    if (loadedAdapterResponseInfo
        .getAdapterClassName()
        .equals("com.google.ads.mediation.sample.customevent.SampleCustomEvent")) {
      adSourceName = "Sample Ad Network (Custom Event)";
    }
  }
  return adSourceName;
}

Kotlin

private fun getUniqueAdSourceName(loadedAdapterResponseInfo: AdapterResponseInfo): String {

  var adSourceName = loadedAdapterResponseInfo.adSourceName
  if (adSourceName == "Custom Event") {
    if (
      loadedAdapterResponseInfo.adapterClassName ==
        "com.google.ads.mediation.sample.customevent.SampleCustomEvent"
    ) {
      adSourceName = "Sample Ad Network (Custom Event)"
    }
  }
  return adSourceName
}

ดูข้อมูลเพิ่มเติมเกี่ยวกับแหล่งที่มาของโฆษณาที่ชนะได้ที่ดึงข้อมูลเกี่ยวกับ การตอบกลับโฆษณา

การผสานรวม App Attribution Partner (AAP)

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

SDK ของพาร์ทเนอร์
Adjust
AppsFlyer
Singular
Tenjin

แนวทางปฏิบัติแนะนำสำหรับการนำไปใช้

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

AdValue

AdValue คือคลาสที่แสดงมูลค่าทางการเงินที่ได้รับจากโฆษณา รวมถึงรหัสสกุลเงินของมูลค่าและประเภทความแม่นยำที่เข้ารหัสดังนี้

PrecisionType คำอธิบาย
UNKNOWN มูลค่าโฆษณาที่ไม่รู้จัก ระบบจะแสดงผลข้อความนี้เมื่อเปิดใช้การรายงานผล Conversion ของ LTV แต่มีข้อมูลไม่เพียงพอ
ESTIMATED มูลค่าโฆษณาโดยประมาณจากข้อมูลรวม
PUBLISHER_PROVIDED ผู้เผยแพร่โฆษณาเป็นผู้ระบุมูลค่าโฆษณา เช่น CPM ที่กําหนดเองในกลุ่มสื่อกลาง
PRECISE มูลค่าที่ตรงกับค่าใช้จ่ายโฆษณานี้

ในกรณีของการแสดงโฆษณาสื่อกลางของ AdMob นั้น AdMob จะพยายาม ระบุESTIMATEDมูลค่าสำหรับแหล่งที่มาของโฆษณาที่เพิ่มประสิทธิภาพแล้ว

สําหรับแหล่งที่มาของโฆษณาที่ไม่ได้เพิ่มประสิทธิภาพ หรือในกรณีที่มีข้อมูลรวมไม่เพียงพอที่จะรายงานค่าประมาณที่มีความหมาย ระบบจะแสดงค่า PUBLISHER_PROVIDED

ทดสอบการแสดงผลจากแหล่งที่มาของโฆษณาซึ่งใช้การเสนอราคา

หลังจากเหตุการณ์รายได้จากโฆษณาระดับการแสดงผลเกิดขึ้นสำหรับ แหล่งที่มาของโฆษณาที่เสนอราคาผ่านคำขอทดสอบ คุณจะได้รับเฉพาะค่าต่อไปนี้

  • UNKNOWN: ระบุประเภทความแม่นยำ
  • 0: ระบุมูลค่าโฆษณา

ก่อนหน้านี้ คุณอาจเห็นประเภทความแม่นยำเป็นค่าอื่นที่ไม่ใช่ UNKNOWN และมูลค่าโฆษณามากกว่า 0

ดูรายละเอียดเกี่ยวกับการส่งคำขอโฆษณาทดสอบได้ที่ เปิดใช้อุปกรณ์ทดสอบ