Bir gösterim gerçekleştiğinde Google Mobile Ads SDK, bu gösterimle ilişkili reklam geliri verilerini sağlar. Verileri, bir kullanıcının yaşam boyu değerini hesaplamak veya verileri aşağı akışta diğer ilgili sistemlere yönlendirmek için kullanabilirsiniz.
Bu kılavuz, gösterim düzeyi reklam geliri verisi yakalama özelliğini Unity projenizde uygulamanıza yardımcı olmak için hazırlanmıştır.
Ön koşullar
- AdMob kullanıcı arayüzünde gösterim düzeyi reklam geliri özelliğini etkinleştirdiğinizden emin olun.
- Unity eklentisi 5.0.0 veya daha yeni bir sürüm.
- Başlayın bölümünü tamamlayın. Unity uygulamanızda Google Mobil Reklamlar Unity eklentisi içe aktarılmış olmalıdır.
Gösterim düzeyinde reklam geliri verilerini alabilmek için en az bir reklam biçimi uygulamanız gerekir:
Ücretli etkinlik işleyici uygulama
Her reklam biçiminin bir OnAdPaid
etkinliği vardır. Google Mobile Ads SDK'sı, bir reklam etkinliğinin yaşam döngüsü boyunca gösterim etkinliklerini izler ve kazanılan değeri temsil eden bir AdValue
ile işleyiciyi çağırır.
Aşağıdaki örnekte, ödüllü reklam için ücretli etkinlikler ele alınmaktadır:
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"];
}
Özel etkinlik reklam kaynağı adını belirleme
Özel etkinlik reklam kaynakları için AdSourceName
özelliği, reklam kaynağı adını Custom Event
verir. Birden fazla özel etkinlik kullanıyorsanız reklam kaynağı adı, birden fazla özel etkinlik arasında ayrım yapacak kadar ayrıntılı değildir. Belirli bir özel etkinliği bulmak için aşağıdaki adımları uygulayın:
AdapterClassName
özelliğini alın.- Benzersiz bir reklam kaynağı adı ayarlayın.
Aşağıdaki örnekte, özel bir etkinlik için benzersiz bir reklam kaynağı adı ayarlanmaktadır:
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;
}
Kazanan reklam kaynağı hakkında daha fazla bilgi için Reklam yanıtı hakkında bilgi alma başlıklı makaleyi inceleyin.
Uygulama İlişkilendirme Ortakları (AAP) ile entegrasyon
Reklam geliri verilerini analiz platformlarına yönlendirme hakkında tüm ayrıntılar için iş ortağının kılavuzuna bakın:
İş Ortağı SDK'sı |
---|
Adjust |
AppsFlyer |
Singular |
Tenjin |
Kullanımla ilgili en iyi uygulamalar
OnPaidEvent
etkinliğini, reklam nesnesini oluşturur veya bu nesneye erişir erişmez ve kesinlikle reklamı göstermeden önce ayarlayın. Bu sayede geri aramaları kaçırmazsınız.- Gösterim düzeyinde reklam geliri bilgilerini
OnPaidEvent
işleyicinizde hemen tercih ettiğiniz Analytics sunucusuna gönderin. Bu sayede, geri aramaları yanlışlıkla bırakmazsınız ve veri tutarsızlıkları önlenir.
AdValue
AdValue
, bir reklam için kazanılan parasal değeri temsil eden bir sınıftır. Bu sınıfa, değerin para birimi kodu ve aşağıdaki gibi kodlanmış hassasiyet türü de dahildir.
AdValue.PrecisionType |
Açıklama |
---|---|
Unknown |
Bilinmeyen bir reklam değeri. Bu hata, GD ping geri bildirimi etkinleştirildiğinde ancak yeterli veri olmadığında döndürülür. |
Estimated |
Birleştirilmiş verilerden tahmin edilen bir reklam değeri. |
PublisherProvided |
Yayıncı tarafından sağlanan bir reklam değeri (ör. bir uyumlulaştırma grubundaki manuel BGBM'ler). |
Precise |
Bu reklamın kesin değeri. |
Uyumlulaştırma söz konusu olduğunda AdMob, optimize edilmiş Estimated
reklam kaynakları için bir değerEstimated
sağlamaya çalışır. Optimize edilmemiş reklam kaynakları için veya anlamlı bir tahmin raporlamak üzere yeterli birleştirilmiş veri bulunmadığı durumlarda PublisherProvided
değeri döndürülür.
Teklifli sistem reklam kaynaklarından gelen gösterimleri test etme
Bir teklif verme reklam kaynağı için test isteği aracılığıyla gösterim düzeyinde reklam geliri etkinliği gerçekleştikten sonra yalnızca aşağıdaki değerleri alırsınız:
Unknown
: Hassasiyet türünü gösterir.
0
: Reklam değerini gösterir.
Daha önce, hassasiyet türünü Unknown
dışında bir değer ve reklam değerini 0
değerinden fazla olarak görmüş olabilirsiniz.
Test reklamı isteği gönderme hakkında ayrıntılı bilgi için Test cihazlarını etkinleştirme başlıklı makaleyi inceleyin.