Geçiş reklamları

Geçiş reklamları, barındıkları uygulamanın arayüzünü kaplayan tam ekran reklamlardır. Genellikle uygulamaların akışındaki doğal geçiş noktalarında (ör. işlemler arasında veya oyun seviyeleri arasındaki duraklatmalar sırasında) görüntülenir. Bir uygulama geçiş reklamı gösterdiğinde kullanıcı, reklama dokunup hedef sayfaya gitmeyi veya reklamı kapatıp uygulamaya dönmeyi seçebilir. Başarı öykülerimizden birini okuyun.

Bu kılavuzda, geçiş reklamlarının Android uygulamalarına nasıl entegre edileceği açıklanmaktadır.

Ön koşullar

  • Başlangıç kılavuzunu tamamlayın.
  • Her zaman test reklamlarıyla test yapın

    Uygulamalarınızı oluşturup test ederken canlı yayınlanan, üretim reklamları yerine test reklamlarını kullandığınızdan emin olun. Bu işlemi yapmazsanız hesabınız askıya alınabilir.

    Test reklamlarını yüklemenin en kolay yolu, Android geçiş reklamları için özel test reklam birimi kimliğimizi kullanmaktır:

    ca-app-pub-3940256099942544/1033173712

    Bu kimlik, her istek için test reklamları döndürecek şekilde özel olarak yapılandırılmıştır ve kodlama, test etme ve hata ayıklama sırasında kendi uygulamalarınızda kullanabilirsiniz. Uygulamanızı yayınlamadan önce bu kimliği kendi reklam birimi kimliğinizle değiştirdiğinizden emin olun.

    Google Mobile Ads SDK'sı (beta) test reklamlarının çalışma şekli hakkında daha fazla bilgi için Test Reklamları başlıklı makaleyi inceleyin.

    Reklam yükleme

    Google Mobile Ads SDK'sı (beta) reklam yüklemek için aşağıdakileri sunar:

    Tek reklam yükleme API'si ile yükleme

    Aşağıdaki örnekte tek bir reklamın nasıl yükleneceği gösterilmektedir:

    Kotlin

    import com.google.android.libraries.ads.mobile.sdk.common.AdLoadCallback
    import com.google.android.libraries.ads.mobile.sdk.common.AdRequest
    import com.google.android.libraries.ads.mobile.sdk.common.FullScreenContentError
    import com.google.android.libraries.ads.mobile.sdk.common.LoadAdError
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAd
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAdEventCallback
    import com.google.android.libraries.ads.mobile.sdk.MobileAds
    
    class InterstitialActivity : Activity() {
      private var interstitialAd: InterstitialAd? = null
    
      override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
    
        // Load ads after you initialize Google Mobile Ads SDK (beta).
        InterstitialAd.load(
          AdRequest.Builder(AD_UNIT_ID).build(),
          object : AdLoadCallback<InterstitialAd> {
            override fun onAdLoaded(ad: InterstitialAd) {
              // Interstitial ad loaded.
              interstitialAd = ad
            }
    
            override fun onAdFailedToLoad(adError: LoadAdError) {
              // Interstitial ad failed to load.
              interstitialAd = null
            }
          },
        )
      }
    
      companion object {
        // Sample interstitial ad unit ID.
        const val AD_UNIT_ID = "ca-app-pub-3940256099942544/1033173712"
      }
    }
    

    Java

    import com.google.android.libraries.ads.mobile.sdk.common.AdLoadCallback;
    import com.google.android.libraries.ads.mobile.sdk.common.AdRequest;
    import com.google.android.libraries.ads.mobile.sdk.common.FullScreenContentError;
    import com.google.android.libraries.ads.mobile.sdk.common.LoadAdError;
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAd;
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAdEventCallback;
    import com.google.android.libraries.ads.mobile.sdk.MobileAds;
    
    class InterstitialActivity extends Activity {
      // Sample interstitial ad unit ID.
      private static final String AD_UNIT_ID = "ca-app-pub-3940256099942544/1033173712";
      private InterstitialAd interstitialAd;
    
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        // Load ads after you initialize Google Mobile Ads SDK (beta).
        InterstitialAd.load(
            new AdRequest.Builder(AD_UNIT_ID).build(),
            new AdLoadCallback<InterstitialAd>() {
              @Override
              public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
                // Interstitial ad loaded.
                AdLoadCallback.super.onAdLoaded(interstitialAd);
                InterstitialActivity.this.interstitialAd = interstitialAd;
              }
    
              @Override
              public void onAdFailedToLoad(@NonNull LoadAdError adError) {
                // Interstitial ad failed to load.
                AdLoadCallback.super.onAdFailedToLoad(adError);
                interstitialAd = null;
              }
            }
        );
      }
    }
    

    Reklam önceden yükleme API'si ile yükleme

    Ön yüklemeyi başlatmak için aşağıdakileri yapın:

    1. Reklam isteğiyle önceden yükleme yapılandırmasını başlatın.

    2. Geçiş reklamları için ön yükleyiciyi reklam birimi kimliğiniz ve preload yapılandırmasıyla başlatın:

    Kotlin

    private fun startPreloading(adUnitID: String) {
      val adRequest: AdRequest = AdRequest.Builder(adUnitID).build()
      val preloadConfig = PreloadConfiguration(adRequest)
      InterstitialAdPreloader.start(adUnitID, preloadConfig)
    }
    
    

    Java

    private void startPreloading(String adUnitId) {
      AdRequest adRequest = new AdRequest.Builder(adUnitId).build();
      PreloadConfiguration preloadConfig = new PreloadConfiguration(adRequest);
      InterstitialAdPreloader.start(adUnitId, preloadConfig);
    }
    
    

    Reklamlar, siz gösterdikçe sürekli olarak kullanıma sunulur. Aşağıdaki örnekte, ön yükleyiciden bir reklam için yoklama yapılır:

    Kotlin

    // Polling returns the next available ad and loads another ad in the background.
    val ad = InterstitialAdPreloader.pollAd(adUnitID)
    

    Java

    // Polling returns the next available ad and loads another ad in the background.
    final InterstitialAd ad = InterstitialAdPreloader.pollAd(adUnitId);
    

    InterstitialAdEventCallback'i ayarlama

    InterstitialAdEventCallback, InterstitialAd görüntülemeyle ilgili etkinlikleri işler. Geçiş reklamını göstermeden önce geri aramayı ayarladığınızdan emin olun:

    Kotlin

    // Listen for ad events.
    interstitialAd?.adEventCallback =
      object : InterstitialAdEventCallback {
        override fun onAdShowedFullScreenContent() {
          // Interstitial ad did show.
        }
    
        override fun onAdDismissedFullScreenContent() {
          // Interstitial ad did dismiss.
          interstitialAd = null
        }
    
        override fun onAdFailedToShowFullScreenContent(
          fullScreenContentError: FullScreenContentError
        ) {
          // Interstitial ad failed to show.
          interstitialAd = null
        }
    
        override fun onAdImpression() {
          // Interstitial ad did record an impression.
        }
    
        override fun onAdClicked() {
          // Interstitial ad did record a click.
        }
      }
    

    Java

    // Listen for ad events.
    interstitialAd.setAdEventCallback(
        new InterstitialAdEventCallback() {
          @Override
          public void onAdShowedFullScreenContent() {
            // Interstitial ad did show.
            InterstitialAdEventCallback.super.onAdShowedFullScreenContent();
          }
    
          @Override
          public void onAdDismissedFullScreenContent() {
            // Interstitial ad did dismiss.
            InterstitialAdEventCallback.super.onAdDismissedFullScreenContent();
            interstitialAd = null;
          }
    
          @Override
          public void onAdFailedToShowFullScreenContent(
              @NonNull FullScreenContentError fullScreenContentError) {
            // Interstitial ad failed to show.
            InterstitialAdEventCallback.super.onAdFailedToShowFullScreenContent(
                fullScreenContentError);
            initerstitialAd = null;
          }
    
          @Override
          public void onAdImpression() {
            // Interstitial ad did record an impression.
            InterstitialAdEventCallback.super.onAdImpression();
          }
    
          @Override
          public void onAdClicked() {
            // Interstitial ad did record a click.
            InterstitialAdEventCallback.super.onAdClicked();
          }
        }
    );
    

    Reklamı göster

    Geçiş reklamı göstermek için show() yöntemini kullanın.

    Kotlin

    // Show the ad.
    interstitialAd?.show(this@InterstitialActivity)
    

    Java

    // Show the ad.
    interstitialAd.show(InterstitialActivity.this);
    

    Bazı en iyi uygulamalar

    Geçiş reklamlarının uygulamanız için doğru reklam türü olup olmadığını değerlendirin.
    Geçiş reklamları, doğal geçiş noktaları olan uygulamalarda en iyi performansı gösterir. Uygulama içinde resim paylaşma veya oyun seviyesini bitirme gibi bir görevin tamamlanması, bu tür bir nokta oluşturur. Uygulamanızın iş akışında geçiş reklamlarını hangi noktalarda göstereceğinizi ve kullanıcının nasıl yanıt vereceğini göz önünde bulundurduğunuzdan emin olun.
    Geçiş reklamı gösterirken işlemi duraklatmayı unutmayın.
    Metin, resim, video gibi birkaç farklı türde geçiş reklamı kullanabilirsiniz. Uygulamanız bir geçiş reklamı gösterdiğinde, reklamın bu kaynaklardan yararlanabilmesi için bazı kaynakların kullanımını da askıya aldığından emin olmanız önemlidir. Örneğin, bir geçiş reklamı gösterme çağrısı yaptığınızda uygulamanız tarafından üretilen tüm ses çıkışlarını duraklattığınızdan emin olun.
    Yeterli yükleme süresi tanıyın.
    Geçiş reklamlarını uygun bir zamanda gösterdiğinizden emin olmanız gerektiği gibi, kullanıcının bu reklamların yüklenmesini beklememesi de önemlidir. show() işlevini çağırmadan önce load() işlevini çağırarak reklamı önceden yüklemek, uygulamanızın bir geçiş reklamı gösterme zamanı geldiğinde tamamen yüklenmiş bir geçiş reklamı göstermesini sağlayabilir.
    Kullanıcıyı reklamlarla boğmayın.
    Uygulamanızdaki geçiş reklamlarının sıklığını artırmak geliri artırmak için iyi bir yöntem gibi görünse de kullanıcı deneyimini olumsuz etkileyebilir ve tıklama oranlarını düşürebilir. Kullanıcıların, uygulamanızı kullanmaktan keyif alamayacak kadar sık kesintiye uğramadığından emin olun.

    Örnek

    Google Mobile Ads SDK'sının (beta) kullanımını gösteren örnek uygulamayı indirip çalıştırın.