Geçiş reklamı

Platform seçin: Android iOS Unity Flutter

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.

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

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, geçiş reklamları için özel test reklam birimi kimliğimizi kullanmaktır:

Android

ca-app-pub-3940256099942544/1033173712

iOS

ca-app-pub-3940256099942544/4411468910

Test reklam birimleri, her istek için test reklamları döndürecek şekilde yapılandırılır ve kodlama, test etme ve hata ayıklama sırasında bunları kendi uygulamalarınızda kullanabilirsiniz. Uygulamanızı yayınlamadan önce bunları kendi reklam birimi kimliklerinizle değiştirdiğinizden emin olun.

Reklam yükleme

Aşağıdaki örnekte bir geçiş reklamı yüklenir:

class InterstitialExampleState extends State<InterstitialExample> {
  InterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = Platform.isAndroid
    ? 'ca-app-pub-3940256099942544/1033173712'
    : 'ca-app-pub-3940256099942544/4411468910';

  /// Loads an interstitial ad.
  void loadAd() {
    InterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdRequest(),
        adLoadCallback: InterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('InterstitialAd failed to load: $error');
          },
        ));
  }
}

Geçiş reklamı etkinlikleri

FullScreenContentCallback kullanarak reklamın gösterilmesi veya kapatılması gibi yaşam döngüsü etkinliklerini dinleyebilirsiniz. Bu etkinliklerle ilgili bildirim almak için reklamı göstermeden önce InterstitialAd.fullScreenContentCallback ayarlayın. Bu örnekte her yöntem uygulanmaktadır:

class InterstitialExampleState extends State<InterstitialExample> {
  InterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = Platform.isAndroid
    ? 'ca-app-pub-3940256099942544/1033173712'
    : 'ca-app-pub-3940256099942544/4411468910';

  /// Loads an interstitial ad.
  void loadAd() {
    InterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdRequest(),
        adLoadCallback: InterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
             ad.fullScreenContentCallback = FullScreenContentCallback(
                // Called when the ad showed the full screen content.
                onAdShowedFullScreenContent: (ad) {},
                // Called when an impression occurs on the ad.
                onAdImpression: (ad) {},
                // Called when the ad failed to show full screen content.
                onAdFailedToShowFullScreenContent: (ad, err) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when the ad dismissed full screen content.
                onAdDismissedFullScreenContent: (ad) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when a click is recorded for an ad.
                onAdClicked: (ad) {});

            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('InterstitialAd failed to load: $error');
          },
        ));
  }
}

Geçiş reklamı görüntüleme

InterstitialAd, tüm uygulama içeriğinin üzerinde Overlay olarak gösterilir ve statik olarak yerleştirilir. Bu nedenle, Flutter widget ağacına eklenemez. show() işlevini çağırarak reklamın ne zaman gösterileceğini seçebilirsiniz.

_interstitiaAd.show();

show() çağrıldıktan sonra bu şekilde gösterilen bir Ad programatik olarak kapatılamaz ve kullanıcı girişi gerektirir. InterstitialAd yalnızca bir kez gösterilebilir. Gösterime yapılan sonraki çağrılar onAdFailedToShowFullScreenContent tetiklenir.

Bir reklama erişim artık gerekli olmadığında reklamın kaldırılması gerekir. dispose()'ı aramak için en iyi uygulama, FullScreenContentCallback.onAdDismissedFullScreenContent ve FullScreenContentCallback.onAdFailedToShowFullScreenContent geri aramalarıdır.

İşte bu kadar. Uygulamanız artık geçiş reklamları göstermeye hazır.

Sonraki adımlar

GitHub'da tam örnek

Geçiş reklamı