Ad Manager yayıncıları, özel öğe listeleri tanımlayarak kendi doğal reklam biçimlerini oluşturabilir. Bunlara özel yerel reklam biçimleri denir ve ayrılmış reklamlarla kullanılabilir. Özel doğal reklamlar, yayıncıların uygulamalarına istedikleri resim ve dize verilerini iletmelerine olanak tanır. Bu veriler bir CustomNativeAd
nesnesi ile temsil edilir.
Özel doğal reklam yükleme
Özel doğal reklamlar, AdLoader
nesneleri kullanılarak yüklenir. ForCustomNativeAd()
yöntemi, AdLoader
öğesini özel doğal reklamları işlemek üzere yapılandırır. Bu yöntemin iki parametresi vardır:
AdLoader
'ın istemesi gereken özel reklamınformatId
. Her özel doğal reklam biçiminin ilişkili bir biçim kimliği değeri vardır. Bu parametre, uygulamanızınAdLoader
'ün hangi biçimi istemesini istediğini belirtir.- Kullanıcı reklamı tıkladığında çağrılacak isteğe bağlı bir
Action<CustomNativeAd, string>
.
Özel doğal reklamlar, oluşturma sırasında özelleştirilebilecek kendi AdLoader.Builder
sınıfına sahip olan AdLoader
sınıfı aracılığıyla yüklenir. ForCustomNativeAd()
yöntemi, AdLoader
öğesini yerel reklamları işlemek üzere yapılandırır.
void LoadCustomNativeAd()
{
AdLoader adLoader = new AdLoader.Builder("/21775744923/example/native")
.ForCustomNativeAd("10063170")
.Build();
adLoader.LoadAd(new AdRequest.Builder().Build());
}
Tek bir reklam birimi birden fazla özel doğal reklam biçimi yayınlamak üzere ayarlanabileceğinden, reklam yükleyiciyi birden fazla olası özel doğal reklam biçimine hazırlamak için ForCustomNativeAd()
farklı biçim kimlikleriyle birden çok kez çağrılabilir.
Özel yerel reklam etkinlikleri
AdLoader
sınıfı, özel bir yerel reklamın yaşam döngüsü hakkında sizi bilgilendirmek için EventHandler
türündeki reklam etkinlikleri sağlar. Aşağıdaki örnekte, bir reklam yükleyicide özel yerel reklam etkinliklerine nasıl kaydolunacağı gösterilmektedir:
private AdLoader adLoader;
adLoader.OnCustomNativeAdLoaded += HandleCustomNativeAdLoaded;
adLoader.OnAdFailedToLoad += HandleCustomNativeAdFailedToLoad;
HandleCustomNativeAdLoaded()
yöntemi bir CustomNativeAdEventArgs
parametresi içeriyor. Yüklenen özel yerel reklama aşağıdaki gibi bu etkinlik parametresi aracılığıyla erişilebilir:
void HandleCustomNativeAdLoaded(object sender, CustomNativeAdEventArgs args)
{
this.customNativeAd = args.nativeAd;
}
HandleCustomNativeAdFailedToLoad()
yöntemi bir AdFailedToLoadEventArgs
parametresi içeriyor. Hata mesajına, aşağıdaki gibi LoadAdError
alanında GetMessage
yöntemi çağrılarak erişilebilir:
void HandleCustomNativeAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
string message = args.LoadAdError.GetMessage();
Debug.Log("Ad Loader fail event received with message: " + message);
}
Özel yerel reklam biçimlerini görüntüleme
Özel yerel reklamlar, kullanıcı tanımlı resim ve metin öğelerinin herhangi bir sayısı için destek sağlar. Bu öğelere, bir biçim alanının değişken kimliğini parametre olarak alan GetTexture2D()
ve GetText()
yöntemlerini sağlayan CustomNativeAd
sınıfı aracılığıyla erişilir.
Aşağıda, özel doğal bir reklamdaki öğelere erişen örnek bir uygulama verilmiştir:
private bool adLoaded;
private Texture2D mainImageTexture;
private string headline;
private CustomNativeAd customNativeAd;
...
void Update()
{
if(adLoaded)
{
mainImageTexture = customNativeAd.GetTexture2D("MainImage");
headline = customNativeAd.GetText("Headline");
adLoaded = false;
}
}
...
void HandleCustomNativeAdLoaded(object sender, CustomNativeAdEventArgs args)
{
customNativeAd = args.nativeAd;
adLoaded = true;
...
}
Özel yerel reklamların gösterimlerini ve tıklamalarını işleme
Özel doğal reklamlarda gösterimleri kaydetme ve tıklama etkinliklerini SDK'ya bildirme sorumluluğu uygulamanıza aittir.
Gösterimleri kaydetme
Özel bir reklam için gösterim kaydetmek üzere ilgili CustomNativeAd
üzerinde RecordImpression()
yöntemini çağırın:
customNativeAd.RecordImpression();
Tıklamaları bildirme
SDK'ya bir öğede tıklama gerçekleştiğini bildirmek için ilgili CustomNativeAd
üzerinde PerformClick()
yöntemini çağırın ve tıklanan öğenin adını iletin. Örneğin, özel biçiminizde "MainImage" adlı bir öğeniz varsa ve bu öğeye karşılık gelen dokudaki bir tıklamayı bildirmek istiyorsanız kodunuz şöyle görünür:
customNativeAd.PerformClick("MainImage");
Özel tıklama işlemlerine yanıt verme
Özel bir reklamda tıklama bildirildiğinde SDK'dan alınabilecek olası yanıtlar şu sırayla denenir:
Reklamın derin bağlantı URL'si için bir içerik çözücü bulun ve çözen ilk çözümü başlatın.
Bir tarayıcı açıp reklamın geleneksel hedef URL'sine gidin.
Kullanıcıyı derin bağlantıya veya web tarayıcısına yönlendirmek yerine, özel doğal reklam biçimleriniz için tıklama işlemini kendiniz gerçekleştirmek istiyorsanız AdLoader.Builder.ForCustomNativeAd()
yönteminde isteğe bağlı bir Action<CustomNativeAd, string>
sağlayın. Bu özel tıklama işlemini ayarlayarak SDK'nın tıklama davranışını geçersiz kılarsınız. Belirli bir öğe için tıklamayı günlüğe kaydetmek üzere özel tıklama işlemi kullanan bir örnek aşağıda verilmiştir:
private void LoadCustomNativeAd()
{
AdLoader adLoader = new AdLoader.Builder("/21775744923/example/native")
.ForCustomNativeAd("10063170", HandleCustomNativeAdClicked)
.Build();
adLoader.OnCustomNativeAdLoaded += HandleCustomNativeAdLoaded;
adLoader.LoadAd(createAdRequest());
}
private void HandleCustomNativeAdClicked(CustomNativeAd customNativeAd, string assetName)
{
Debug.Log("Custom Native ad asset with name " + assetName + " was clicked.");
}