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

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

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

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

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

การติดตั้งใช้งานตัวจัดการเหตุการณ์แบบเสียค่าใช้จ่าย

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

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

private void LoadRewardedAd()
{
   // Send the request to load the ad.
   AdRequest adRequest = new AdRequest();
   RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd rewardedAd, LoadAdError error) =>
   {
      // If the operation failed with a reason.
      if (error != null)
      {
         Debug.LogError("Rewarded ad failed to load an ad with error : " + error);
         return;
      }

      rewardedAd.OnAdPaid += this.HandleAdPaidEvent;
   });
}

public void HandleAdPaidEvent(AdValue adValue)
{
    // TODO: Send the impression-level ad revenue information to your
    // preferred analytics server directly within this callback.

    long valueMicros = adValue.Value;
    string currencyCode = adValue.CurrencyCode;
    PrecisionType precision = adValue.Precision;

    ResponseInfo responseInfo = rewardedAd.GetResponseInfo();
    string responseId = responseInfo.GetResponseId();

    AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
    string adSourceId = loadedAdapterResponseInfo.AdSourceId;
    string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
    string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
    string adSourceName = loadedAdapterResponseInfo.AdSourceName;
    string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
    long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
    Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;

    Dictionary<string, string> extras = responseInfo.GetResponseExtras();
    string mediationGroupName = extras["mediation_group_name"];
    string mediationABTestName = extras["mediation_ab_test_name"];
    string mediationABTestVariant = extras["mediation_ab_test_variant"];
}

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

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

  1. รับพร็อพเพอร์ตี้ AdapterClassName
  2. ตั้งชื่อแหล่งที่มาของโฆษณาที่ไม่ซ้ำกัน

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

private string GetAdSourceName(AdapterResponseInfo loadedAdapterResponseInfo)
{
    if (loadedAdapterResponseInfo == null)
    {
        return string.Empty;
    }

    string adSourceName = loadedAdapterResponseInfo.AdSourceName;

    if (adSourceName == "Custom Event")
    {

        #if UNITY_ANDROID
            if (loadedAdapterResponseInfo.AdapterClassName ==
                "com.google.ads.mediation.sample.customevent.SampleCustomEvent")
            {
                adSourceName = "Sample Ad Network (Custom Event)";
            }
        #elif UNITY_IPHONE
            if (loadedAdapterResponseInfo.AdapterClassName == "SampleCustomEvent")
            {
                adSourceName = "Sample Ad Network (Custom Event)";
            }
        #endif

    }
    return adSourceName;
}

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

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

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

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

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

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

AdValue

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

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

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

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

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

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

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

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