Iklan interstisial

Iklan interstisial adalah iklan layar penuh yang menutupi antarmuka aplikasi host iklan. Iklan ini biasanya ditampilkan di titik transisi alami dalam alur aplikasi, seperti di antara aktivitas atau selama waktu jeda antarlevel dalam game. Saat aplikasi menampilkan iklan interstisial, pengguna memiliki pilihan untuk mengetuk iklan dan melanjutkan ke tujuannya atau menutupnya dan kembali ke aplikasi. Baca salah satu studi kasus kami.

Panduan ini menjelaskan cara mengintegrasikan iklan interstisial ke dalam aplikasi Android.

Prasyarat

  • Google Mobile Ads SDK 19.7.0 atau yang lebih tinggi.
  • Selesaikan Panduan memulai.

Selalu uji dengan iklan percobaan

Saat mem-build dan menguji aplikasi, pastikan Anda menggunakan iklan percobaan, bukan iklan produksi 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

Iklan ini telah dikonfigurasi secara khusus untuk menampilkan iklan pengujian untuk setiap permintaan, dan Anda dapat menggunakannya di aplikasi Anda sendiri saat melakukan coding, pengujian, dan proses debug. Pastikan saja Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan aplikasi.

Untuk informasi selengkapnya tentang cara kerja iklan percobaan Mobile Ads SDK, lihat Iklan Percobaan.

Memuat iklan

Untuk memuat iklan interstisial, panggil metode statis load() InterstitialAd dan teruskan InterstitialAdLoadCallback untuk menerima iklan yang dimuat atau kemungkinan error. Perhatikan bahwa seperti callback pemuatan format lainnya, InterstitialAdLoadCallback memanfaatkan LoadAdError untuk memberikan detail error fidelitas lebih tinggi.

Java

import com.google.android.gms.ads.interstitial.InterstitialAd;
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;

public class MainActivity extends Activity {

  private InterstitialAd mInterstitialAd;
  private static final String TAG = "MainActivity";

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    AdRequest adRequest = new AdRequest.Builder().build();

    InterstitialAd.load(this,"ca-app-pub-3940256099942544/1033173712", adRequest,
        new InterstitialAdLoadCallback() {
      @Override
      public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
        // The mInterstitialAd reference will be null until
        // an ad is loaded.
        mInterstitialAd = interstitialAd;
        Log.i(TAG, "onAdLoaded");
      }

      @Override
      public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
        // Handle the error
        Log.d(TAG, loadAdError.toString());
        mInterstitialAd = null;
      }
    });
  }
}

Kotlin

import com.google.android.gms.ads.interstitial.InterstitialAd;
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;

class MainActivity : AppCompatActivity() {

  private var mInterstitialAd: InterstitialAd? = null
  private final val TAG = "MainActivity"

    override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      setContentView(R.layout.activity_main)

      val adRequest = AdRequest.Builder().build()

      InterstitialAd.load(this,"ca-app-pub-3940256099942544/1033173712", adRequest, object : InterstitialAdLoadCallback() {
        override fun onAdFailedToLoad(adError: LoadAdError) {
          Log.d(TAG, adError?.toString())
          mInterstitialAd = null
        }

        override fun onAdLoaded(interstitialAd: InterstitialAd) {
          Log.d(TAG, 'Ad was loaded.')
          mInterstitialAd = interstitialAd
        }
      })
    }
}

Menyetel FullScreenContentCallback

FullScreenContentCallback menangani peristiwa yang terkait dengan menampilkan InterstitialAd Anda. Sebelum menampilkan InterstitialAd, pastikan untuk menetapkan callback:

Java

mInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
  @Override
  public void onAdClicked() {
    // Called when a click is recorded for an ad.
    Log.d(TAG, "Ad was clicked.");
  }

  @Override
  public void onAdDismissedFullScreenContent() {
    // Called when ad is dismissed.
    // Set the ad reference to null so you don't show the ad a second time.
    Log.d(TAG, "Ad dismissed fullscreen content.");
    mInterstitialAd = null;
  }

  @Override
  public void onAdFailedToShowFullScreenContent(AdError adError) {
    // Called when ad fails to show.
    Log.e(TAG, "Ad failed to show fullscreen content.");
    mInterstitialAd = null;
  }

  @Override
  public void onAdImpression() {
    // Called when an impression is recorded for an ad.
    Log.d(TAG, "Ad recorded an impression.");
  }

  @Override
  public void onAdShowedFullScreenContent() {
    // Called when ad is shown.
    Log.d(TAG, "Ad showed fullscreen content.");
  }
});

Kotlin

mInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
  override fun onAdClicked() {
    // Called when a click is recorded for an ad.
    Log.d(TAG, "Ad was clicked.")
  }

  override fun onAdDismissedFullScreenContent() {
    // Called when ad is dismissed.
    Log.d(TAG, "Ad dismissed fullscreen content.")
    mInterstitialAd = null
  }

  override fun onAdFailedToShowFullScreenContent(adError: AdError?) {
    // Called when ad fails to show.
    Log.e(TAG, "Ad failed to show fullscreen content.")
    mInterstitialAd = null
  }

  override fun onAdImpression() {
    // Called when an impression is recorded for an ad.
    Log.d(TAG, "Ad recorded an impression.")
  }

  override fun onAdShowedFullScreenContent() {
    // Called when ad is shown.
    Log.d(TAG, "Ad showed fullscreen content.")
  }
}

Menampilkan iklan

Iklan interstisial harus ditampilkan selama jeda alami dalam alur aplikasi. Di antara level game adalah contoh yang baik, atau setelah pengguna menyelesaikan tugas. Untuk menampilkan interstisial, gunakan Metode show().

Java

if (mInterstitialAd != null) {
  mInterstitialAd.show(MyActivity.this);
} else {
  Log.d("TAG", "The interstitial ad wasn't ready yet.");
}

Kotlin

if (mInterstitialAd != null) {
  mInterstitialAd?.show(this)
} else {
  Log.d("TAG", "The interstitial ad wasn't ready yet.")
}

Beberapa praktik terbaik

Pertimbangkan apakah iklan interstisial adalah jenis iklan yang tepat untuk aplikasi Anda.
Iklan interstisial berfungsi paling baik di aplikasi dengan titik transisi alami. Kesimpulan suatu tugas dalam aplikasi, seperti membagikan gambar atau menyelesaikan dalam level game, menciptakan poin semacam itu. Pastikan Anda mempertimbangkan titik mana dalam alur kerja aplikasi yang akan menampilkan iklan interstisial dan bagaimana pengguna kemungkinan akan meresponsnya.
Ingat untuk menjeda tindakan saat menampilkan iklan interstisial.
Ada beberapa jenis iklan interstisial yang berbeda: teks, gambar, dan masih banyak lagi. Penting untuk memastikan bahwa saat aplikasi Anda menampilkan iklan interstisial, aplikasi juga menangguhkan penggunaan beberapa resource untuk memungkinkan iklan memanfaatkannya. Misalnya, ketika Anda melakukan panggilan untuk menampilkan iklan interstisial, pastikan untuk menjeda output audio apa pun yang dihasilkan oleh aplikasi Anda.
Berikan waktu pemuatan yang cukup.
Sama pentingnya dengan memastikan Anda menampilkan iklan interstisial pada waktu yang tepat, penting juga untuk memastikan pengguna tidak perlu menunggunya dimuat. Memuat iklan terlebih dahulu dengan memanggil load() sebelum Anda bermaksud memanggil show() dapat memastikan bahwa aplikasi Anda memiliki iklan interstisial yang dimuat sepenuhnya dan siap ditampilkan saat waktunya tiba.
Jangan membanjiri pengguna dengan iklan.
Meskipun meningkatkan frekuensi iklan interstisial di aplikasi Anda mungkin tampak sebagai cara yang bagus untuk meningkatkan pendapatan, hal itu juga dapat menurunkan pengalaman pengguna dan rasio klik-tayang (CTR) yang lebih rendah. Pastikan pengguna tidak terlalu sering terganggu sehingga mereka tidak lagi dapat menikmati penggunaan aplikasi Anda.

Kode sumber

Contoh di GitHub

Kisah sukses

Langkah berikutnya