Bir gösterim gerçekleştiğinde GMA Next-Gen 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, Android uygulamanızda gösterim düzeyi reklam geliri verisi yakalamayı 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.
- GMA Next-Gen SDK kurulumunu yapın.
Gösterim düzeyi reklam geliri elde edebilmek için en az bir reklam biçimi uygulamanız gerekir:
Ücretli etkinlik işleyici
Her reklam biçiminin bir
onAdPaid
etkinlik geri çağırması vardır.
Bir reklam etkinliğinin yaşam döngüsü sırasında GMA Next-Gen SDK, gösterim etkinliklerini izler ve kazanılan değerle işleyiciyi çağırır.
Aşağıdaki örnekte, ödüllü reklam için ücretli etkinlikler ele alınmaktadır:
Kotlin
ad.adEventCallback =
object : RewardedAdEventCallback {
override fun onAdPaid(adValue: AdValue) {
// Send the impression-level ad revenue information to your
// preferred analytics server directly within this callback.
// Extract the impression-level ad revenue data.
val valueMicros = adValue.valueMicros
val currencyCode = adValue.currencyCode
val precisionType = adValue.precisionType
val loadedAdSourceResponseInfo = ad.getResponseInfo().loadedAdSourceResponseInfo
val adSourceName = loadedAdSourceResponseInfo?.name
val adSourceId = loadedAdSourceResponseInfo?.id
val adSourceInstanceName = loadedAdSourceResponseInfo?.instanceName
val adSourceInstanceId = loadedAdSourceResponseInfo?.instanceId
val extras = ad.getResponseInfo().responseExtras
val mediationGroupName = extras.getString("mediation_group_name")
val mediationABTestName = extras.getString("mediation_ab_test_name")
val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}
}
Java
ad.setAdEventCallback(
new RewardedAdEventCallback() {
@Override
public void onAdPaid(@NonNull AdValue value) {
// Send the impression-level ad revenue information to your preferred
// analytics server directly within this callback.
// Extract the impression-level ad revenue data.
long valueMicros = value.getValueMicros();
String currencyCode = value.getCurrencyCode();
PrecisionType precisionType = value.getPrecisionType();
AdSourceResponseInfo loadedAdSourceResponseInfo =
ad.getResponseInfo().getLoadedAdSourceResponseInfo();
String adSourceName = loadedAdSourceResponseInfo.getName();
String adSourceId = loadedAdSourceResponseInfo.getId();
String adSourceInstanceName = loadedAdSourceResponseInfo.getInstanceName();
String adSourceInstanceId = loadedAdSourceResponseInfo.getInstanceId();
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");
}
});
Özel etkinlik reklam kaynağı adını belirleme
Özel etkinlik reklam kaynakları için AdSourceResponseInfo.name özelliği, reklam kaynağı adını Custom event döndürür. 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:
AdSourceResponseInfo.nameö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:
Kotlin
private fun getUniqueAdSourceName(loadedAdapterResponseInfo: AdSourceResponseInfo): String {
var adSourceName = loadedAdapterResponseInfo.name
if (adSourceName == "Custom Event") {
if (
loadedAdapterResponseInfo.adapterClassName ==
"com.google.ads.mediation.sample.customevent.SampleCustomEvent"
) {
adSourceName = "Sample Ad Network (Custom Event)"
}
}
return adSourceName
}Java
private String getUniqueAdSourceName(@NonNull AdSourceResponseInfo loadedAdapterResponseInfo) {
String adSourceName = loadedAdapterResponseInfo.getName();
if (adSourceName.equals("Custom Event")) {
if (loadedAdapterResponseInfo
.getAdapterClassName()
.equals("com.google.ads.mediation.sample.customevent.SampleCustomEvent")) {
adSourceName = "Sample Ad Network (Custom Event)";
}
}
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 Ortağı (AAP) entegrasyonu
Reklam geliri verilerini analiz platformlarına yönlendirme hakkında ayrıntılı bilgi için:
| İş Ortağı SDK'sı |
|---|
| Adjust |
| AppsFlyer |
| Singular |
| Tenjin |
Kullanımla ilgili en iyi uygulamalar
- Reklam nesnesini oluşturur veya nesneye erişim sağlarsanız dinleyiciyi hemen ayarlayın ve kesinlikle reklamı göstermeden önce ayarlayın. Bu sayede, ücretli etkinlik geri aramalarını kaçırmazsınız.
- Gösterim düzeyinde reklam geliri bilgilerini, ücretli etkinlik geri çağırması çağrıldığında hemen tercih ettiğiniz analiz sunucusuna gönderin. Bu sayede, geri aramaları yanlışlıkla bırakmadığınızdan emin olabilir ve veri tutarsızlıklarını önleyebilirsiniz.
AdValue
AdValue, bir reklam için kazanılan parasal değeri temsil eden bir sınıftır. Bu sınıfta, değerin para birimi kodu ve aşağıdaki gibi kodlanmış hassasiyet türü yer alır.
| PrecisionType | Açıklama |
|---|---|
UNKNOWN |
Bilinmeyen bir reklam değeri. Bu hata, DK 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. |
PUBLISHER_PROVIDED |
Yayıncı tarafından sağlanan bir reklam değeri (ör. bir uyumlulaştırma grubundaki manuel BGBM'ler). |
PRECISE |
Bu reklam için ödenen kesin değerdir. |
AdMob uyumlulaştırmasında AdMob, optimize edilmiş reklam kaynakları için ESTIMATED değeri sağlamaya çalışır.
Optimize edilmemiş reklam kaynakları için veya anlamlı bir tahmin raporlamak üzere yeterli toplu verinin olmadığı durumlarda PUBLISHER_PROVIDED 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.