Özel yerel reklam biçimleri

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ın formatId. Her özel doğal reklam biçiminin ilişkili bir biçim kimliği değeri vardır. Bu parametre, uygulamanızın AdLoader'ü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:

  1. Reklamın derin bağlantı URL'si için bir içerik çözücü bulun ve çözen ilk çözümü başlatın.

  2. 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.");
}