وقتی ظهوری رخ میدهد، Google Mobile Ads Unity Plugin دادههای درآمد آگهی مرتبط با آن ظهور را ارائه میدهد. میتوانید از این دادهها برای محاسبه ارزش طول عمر کاربر استفاده کنید یا دادهها را به سیستمهای مرتبط دیگر ارسال کنید.
این راهنما برای کمک به شما در پیادهسازی ضبط دادههای درآمد آگهی در سطح ظهور در پروژه Unity شما درنظر گرفته شده است.
پیشنیازها
- مطمئن شوید که ویژگی درآمد آگهی سطح ظهور را در «میانای کاربری AdMob» روشن کردهاید.
- افزایه Unity نسخه ۵.۰.۰ یا بالاتر.
- شروع به کار را تکمیل کنید. افزونه Google Mobile Ads Unity باید ازقبل به برنامه 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 را به شما میدهد. اگر از چند رویداد سفارشی استفاده میکنید، نام منبع آگهی بهاندازه کافی جزئی نیست که بتواند بین چند رویداد سفارشی تمایز قائل شود. برای پیدا کردن رویداد سفارشی خاص، مراحل زیر را انجام دهید:
- خصوصیت
AdapterClassNameرا دریافت کنید. - نام منبع آگهی منحصربهفردی تنظیم کنید.
مثال زیر نام منبع آگهی منحصربهفردی را برای رویداد سفارشی تنظیم میکند:
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 دیده باشید.
برای جزئیات ارسال درخواست آگهی آزمایشی، به فعال کردن دستگاههای آزمایشی مراجعه کنید.