درآمد آگهی سطح ظهور

انتخاب پلاتفرم: Android iOS Unity Android (قدیمی)

وقتی ظهوری رخ می‌دهد، Google Mobile Ads Unity Plugin داده‌های درآمد آگهی مرتبط با آن ظهور را ارائه می‌دهد. می‌توانید از این داده‌ها برای محاسبه ارزش طول عمر کاربر استفاده کنید یا داده‌ها را به سیستم‌های مرتبط دیگر ارسال کنید.

این راهنما برای کمک به شما در پیاده‌سازی ضبط داده‌های درآمد آگهی در سطح ظهور در پروژه Unity شما درنظر گرفته شده است.

پیش‌نیازها

پیاده‌سازی مدیریت‌کننده رویداد پولی

هر قالب آگهی رویداد OnAdPaid دارد. درطول چرخه حیات رویداد آگهی، Google Mobile Ads Unity Plugin رویدادهای ظهور را پایش می‌کند و گرداننده را با 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;
}

برای اطلاعات بیشتر درباره منبع آگهی برنده، به بازیابی اطلاعات درباره پاسخ آگهی مراجعه کنید.

ادغام با «شریک ارجاع برنامه» (AAP)

برای جزئیات کامل درباره بازارسال داده‌های درآمد آگهی به پلاتفرم‌های تجزیه‌وتحلیل، به راهنمای شریک مراجعه کنید:

کیت توسعه نرم‌افزار شریک
تنظیم کردن
AppsFlyer
Singular
Tenjin

روال‌های مطلوب پیاده‌سازی

  • رویداد OnPaidEvent را بلافاصله پس‌از ایجاد یا دسترسی به شیء آگهی، و قطعاً قبل‌از نمایش آگهی تنظیم کنید. این کار باعث می‌شود که هیچ تماسی را ازدست ندهید.
  • اطلاعات درآمد آگهی در سطح ظهور را فوراً در گرداننده OnPaidEvent به سرور تجزیه‌وتحلیل ترجیحی‌تان ارسال کنید. این کار تضمین می‌کند که شما به‌طور تصادفی هیچ‌یک از تماس‌های برگشتی را ازدست ندهید و از مغایرت داده‌ها جلوگیری می‌کند.

AdValue

‫AdValue کلاسی است که ارزش پولی کسب‌شده برای آگهی را نشان می‌دهد، ازجمله کد واحد پول مقدار و نوع دقت آن که به‌صورت زیر کدگذاری شده است.

AdValue.PrecisionType شرح
Unknown مقدار آگهی که ناشناخته است. وقتی که برگشتی پینگ LTV فعال باشد اما داده‌های کافی دردسترس نباشد، این مقدار برگردانده می‌شود.
Estimated مقدار آگهی تخمینی از داده‌های تجمیعی.
PublisherProvided مقدار آگهی ارائه‌شده توسط ناشر، مانند هزارظهوربهای دستی در گروه واسطه‌گری.
Precise ارزش دقیق این آگهی.

درصورت میانجی‌گری، AdMob تلاش می‌کند مقدار Estimated را برای منابع آگهی‌ای که بهینه‌سازی شده‌اند ارائه دهد. برای منابع آگهی بهینه‌نشده، یا در مواردی که داده‌های تجمیعی کافی برای گزارش تخمین معنادار وجود ندارد، مقدار PublisherProvided برگردانده می‌شود.

آزمایش ظهورها از منابع آگهی مناقصه

پس‌از اینکه رویداد درآمد آگهی سطح ظهور برای منبع آگهی پیشنهاد قیمت ازطریق درخواست آزمایش رخ داد، فقط مقادیر زیر را دریافت می‌کنید:

  • Unknown: نوع دقت را نشان می‌دهد.
  • 0: نشان‌دهنده ارزش آگهی است.
قبلاً، ممکن است نوع دقت را به‌عنوان مقداری غیر از Unknown و مقدار آگهی را بیشتر از 0 دیده باشید.

برای جزئیات ارسال درخواست آگهی آزمایشی، به فعال کردن دستگاه‌های آزمایشی مراجعه کنید.