Interstisial

Iklan interstisial adalah iklan layar penuh yang menutupi antarmuka aplikasi host-nya. Iklan ini biasanya ditampilkan pada titik transisi alami dalam alur aplikasi, seperti di antara aktivitas atau selama jeda antarlevel dalam game. Jika menampilkan iklan interstisial, pengguna memiliki pilihan untuk mengetuk iklan dan melanjutkan ke tujuannya atau menutupnya dan kembali ke aplikasi.

Panduan ini menjelaskan cara mengintegrasikan iklan interstisial ke aplikasi Flutter.

Selalu uji dengan iklan percobaan

Saat membuat dan menguji aplikasi, pastikan Anda menggunakan iklan percobaan, bukan iklan produksi secara langsung. Jika Anda tidak melakukannya, akun Anda dapat ditangguhkan.

Cara termudah untuk memuat iklan percobaan adalah dengan menggunakan ID unit iklan percobaan khusus untuk interstisial:

Android

ca-app-pub-3940256099942544/1033173712

iOS

ca-app-pub-3940256099942544/4411468910

Unit iklan percobaan dikonfigurasi guna menampilkan iklan percobaan untuk setiap permintaan, dan Anda bebas menggunakannya di aplikasi Anda sendiri saat melakukan coding, pengujian, dan proses debug. Pastikan Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan .

Memuat iklan

Contoh berikut memuat iklan interstisial:

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');
          },
        ));
  }
}

Peristiwa iklan interstisial

Melalui penggunaan FullScreenContentCallback, Anda dapat memproses siklus proses peristiwa, seperti saat iklan ditampilkan atau ditutup. Setel InterstitialAd.fullScreenContentCallback sebelum menampilkan iklan untuk diterima notifikasi untuk peristiwa tersebut. Contoh ini mengimplementasikan setiap metode:

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');
          },
        ));
  }
}

Menampilkan iklan interstisial

InterstitialAd ditampilkan sebagai Overlay di atas semua konten aplikasi dan ditempatkan secara statis; sehingga tidak dapat ditambahkan ke hierarki widget Flutter. Anda dapat memilih waktu untuk menampilkan iklan dengan memanggil show().

_interstitiaAd.show();

Setelah show() dipanggil, Ad yang ditampilkan dengan cara ini tidak dapat ditutup secara terprogram dan membutuhkan input pengguna. InterstitialAd hanya dapat ditampilkan sekali. Panggilan berikutnya untuk ditampilkan akan memicu onAdFailedToShowFullScreenContent.

Iklan harus dibuang jika akses ke iklan tidak lagi diperlukan. Praktik terbaik saat memanggil dispose() ada dalam FullScreenContentCallback.onAdDismissedFullScreenContent dan Callback FullScreenContentCallback.onAdFailedToShowFullScreenContent.

Selesai. Aplikasi Anda sekarang siap untuk menampilkan iklan interstisial.

Langkah berikutnya

Contoh lengkap di GitHub

Interstisial