Ad Exchange için doğrudan erişimi ayarlama

Google Mobile Ads SDK'sı, Ad Exchange mülkü ile uygulamalarınızdan para kazanmayı destekler. Bu kılavuzda, uygulamalarınızı Ad Exchange tarafından desteklenen tüm reklam biçimleri için nasıl yapılandıracağınız gösterilmektedir.

Ön koşullar

Uygulamanızı Ad Exchange'e erişecek şekilde yapılandırma

Ad Manager uygulama kimliğinizi (Ad Manager kullanıcı arayüzünde tanımlanır) android:name="com.google.android.gms.ads.APPLICATION_ID" ile bir <meta-data> etiketi aracılığıyla uygulamanızın AndroidManifest.xml dosyasına ekleyin. android:value için, tırnak işaretleri arasında kendi Ad Manager uygulama kimliğinizi girin.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Ayrıca, <meta-data> etiketi yukarıda gösterildiği gibi eklenemediyse şu mesajla birlikte bir kilitlenmeye neden olacağını unutmayın:

Missing application ID.

Ardından Google Mobile Ads SDK'sını başlatabilir ve görüntülenecek bir reklam biçimi seçebilirsiniz. Bu kılavuzun geri kalanında, Ad Exchange'den nasıl reklam yükleyebileceğinizi göstermek için banner biçimi uygulanmaktadır. Aynı adımlar, Google Mobile Ads SDK'sı tarafından desteklenen tüm reklam biçimleri için geçerli olabilir.

Ad Exchange'den reklam yükleme

Uygulamanızda reklam birimi kimliği yerine öne eğik çizgi içeren bir Ad Exchange web mülkü kodu kullanabilirsiniz.

Örneğin, aşağıdaki gibi Activity düzenine bir AdManagerAdView yerleştirerek banner reklam yüklemek için:

# main_activity.xml
...
  <com.google.android.gms.ads.admanager.AdManagerAdView
      xmlns:ads="http://schemas.android.com/apk/res-auto"
      android:id="@+id/adManagerAdView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-mb-app-pub-5629679302779023/">
  </com.google.android.gms.ads.admanager.AdManagerAdView>

Ad Exchange web mülkü kodunun sonuna düz eğik çizgi eklemenin, yukarıda gösterildiği gibi reklam isteği hatasına neden olacağını unutmayın.

Invalid Request. Cannot determine request type. Is your ad unit id correct?

Ad Exchange web mülkü kodunu reklam birimine dönüştürebileceğinizi de unutmayın. Sonrasında, Ad Exchange Etiketi oluşturmak ve bunu uygulamanıza kopyalamak için Ad Manager kullanıcı arayüzünü kullanabilirsiniz. Oluşturulan etikette Ad Exchange web mülkü kodu ve ardından öne eğik çizgi olmadan alt reklam birimi kimlikleri yer almalıdır. Örneğin: ca-mb-app-pub-5629679302779023/banner

Alternatif olarak, AdManagerAdView öğesini programatik olarak da oluşturabilirsiniz:

Java

AdManagerAdView adView = new AdManagerAdView(this);

adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");

// TODO: Add adView to your view hierarchy.

Kotlin

val adView = AdManagerAdView(this)

adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"

// TODO: Add adView to your view hierarchy.

AdManagerAdView uygulandıktan sonra, AdManagerAdView sınıfında loadAd() yöntemini çağırabilir ve reklam etkinliklerini kullanarak reklamınızın davranışını özelleştirebilirsiniz.

İşte bu kadar. Uygulamanız artık Ad Exchange'den banner reklamlar yüklemeye ve göstermeye hazır.

Ayrıca, ilgili kılavuzları izleyerek Ad Exchange'deki diğer reklam biçimlerini yüklemek ve görüntülemek için Ad Exchange web mülkünü kullanabilirsiniz:

(Yalnızca Avrupa'daki onaylı yayıncılar) Taban fiyatlar ekleme

"Taban fiyatlar" özelliği için istek gönderebilirsiniz.

Onaylandıktan sonra, reklam isteğine sırasıyla pubf ve pvtf parametrelerini kullanarak herkese açık bir taban veya özel taban ekleyebilirsiniz. Aşağıdaki kod örneğinde "123" değerini mikro cinsinden taban fiyatlar ve ağınızın varsayılan para birimiyle değiştirin. Mikroların nasıl uygulandığına dair örnek: Varsayılan para biriminiz ABD dolarıysa "6000000" girilmesi, 6,00 ABD dolarına eşdeğerdir.

Java

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

Kotlin

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
    .build();