Özel yerel reklam biçimleri

Ad Manager yayıncıları, özel öğe listeleri tanımlayarak kendi yerel reklam biçimlerini oluşturabilir. Bunlara özel yerel reklam biçimleri adı verilir ve bunlar, ayrılmış reklamlarla kullanılabilir. Özel yerel reklamlar, yayıncıların uygulamalarına rastgele resim ve dize verileri geçirmesine olanak tanır. Bu veri bir CustomNativeAd nesnesiyle gösterilir.

Özel yerel reklam yükleme

Özel yerel reklamlar, AdLoader nesneleri kullanılarak yüklenir. ForCustomNativeAd() yöntemi, AdLoader öğesini özel yerel reklamları işleyecek şekilde yapılandırır. Bu yöntem için iki parametre vardır:

  • AdLoader öğesinin istemesi gereken özel reklamın formatId. Her özel yerel reklam biçiminin, kendisiyle ilişkilendirilmiş bir biçim kimliği değeri vardır. Bu parametre, uygulamanızın AdLoader tarafından hangi biçimin isteyeceğini belirtir.
  • Kullanıcı reklamı tıkladığında çağrılacak isteğe bağlı bir Action<CustomNativeAd, string>.

Özel yerel reklamlar, oluşturma sırasında özelleştirmek için kendi AdLoader.Builder sınıfının bulunduğu AdLoader sınıfı aracılığıyla yüklenir. ForCustomNativeAd() yöntemi, AdLoader öğesini yerel reklamları işleyecek şekilde yapılandırır.

void LoadCustomNativeAd()
{
    AdLoader adLoader = new AdLoader.Builder("/6499/example/native")
            .ForCustomNativeAd("10063170")
            .Build();
    adLoader.LoadAd(new AdRequest.Builder().Build());
}

Tek bir reklam birimi birden fazla özel yerel reklam biçimi yayınlayabilecek şekilde ayarlanabileceği için ForCustomNativeAd(), reklam yükleyiciyi birden fazla özel yerel reklam biçimine hazırlamak için farklı biçim kimlikleriyle birden fazla kez çağrılabilir.

Özel yerel reklam etkinlikleri

AdLoader sınıfı, özel yerel reklam yaşam döngüsü hakkında bilgi vermek için EventHandler türünde 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, CustomNativeAdEventArgs parametresi içerir. Yüklenmiş olan özel yerel reklama, aşağıda gösterildiği gibi bu etkinlik parametresi üzerinden erişilebilir:

void HandleCustomNativeAdLoaded(object sender, CustomNativeAdEventArgs args)
{
    this.customNativeAd = args.nativeAd;
}

HandleCustomNativeAdFailedToLoad() yöntemi, AdFailedToLoadEventArgs parametresi içerir. Hata mesajına, aşağıda gösterildiği 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);
}

Görüntülü Reklam Ağı özel yerel reklam biçimleri

Özel yerel reklamlar, kullanıcı tanımlı herhangi bir sayıda resim ve metin öğesi için destek sağlar. Bu öğelere, biçim olarak değişken alanının değişken kimliğini alan GetTexture2D() ve GetText() yöntemleri sağlayan CustomNativeAd sınıfı aracılığıyla erişilebilir.

Aşağıda, özel yerel reklamdaki öğelere erişen bir örnek 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ı yönetme

Özel yerel reklam ile uygulamanız gösterimleri kaydetmekten ve tıklama etkinliklerini SDK'ya raporlamaktan sorumludur.

Gösterimleri kaydet

Bir özel reklamın gösterimini kaydetmek için karşılık gelen CustomNativeAd öğesinde RecordImpression() yöntemini çağırın:

customNativeAd.RecordImpression();

Tıklamaları raporla

SDK'ya bir öğede tıklama gerçekleştiğini bildirmek için ilgili CustomNativeAd öğesindeki PerformClick() yöntemini çağırın ve tıklanan öğenin adını iletin. Örneğin, özel biçimdeki "AnaResim" adlı bir öğeniz varsa ve bu öğeye karşılık gelen dokuya bir tıklama bildirmek isterseniz kodunuz şöyle görünür:

customNativeAd.PerformClick("MainImage");

Özel tıklama işlemlerine yanıt verin

Bir özel reklamda tıklama raporlandığında SDK'dan olası yanıtlar şu sırayla denenir:

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

  2. Bir tarayıcı açın ve reklamın geleneksel hedef URL'sine gidin.

Kullanıcıyı derin bağlantıya veya web tarayıcısına yönlendirmek yerine özel yerel reklam biçimlerinize ilişkin 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. Aşağıda, belirli bir öğe için tıklamayı günlüğe kaydetmek üzere özel bir tıklama işlemi kullanan bir örnek verilmiştir:

private void LoadCustomNativeAd()
{
    AdLoader adLoader = new AdLoader.Builder("/6499/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.");
}