Gli annunci interstitial sono annunci a schermo intero che coprono l'interfaccia dell'app. Questi annunci vengono mostrati in punti di transizione naturali nell'app, ad esempio tra le varie attività o durante le pause nei livelli di gioco.
Quando la tua app mostra un annuncio interstitial, gli utenti possono toccarlo e continuare oppure chiuderlo e tornare all'app.
Questa guida spiega come integrare gli annunci interstitial in un'app per Android.
Prima di iniziare
Prima di continuare, completa queste operazioni:
- Configura GMA Next-Gen SDK.
- Utilizza l'ID unità pubblicitaria interstitial di test
ca-app-pub-3940256099942544/1033173712.- Durante la creazione e il test dell'app, assicurati di utilizzare annunci di prova anziché annunci di produzione pubblicati. Se non utilizzi l'ID unità pubblicitaria di test, Google può sospendere il tuo account.
- Prima di pubblicare l'app, sostituisci questo ID con l'ID unità pubblicitaria.
- Per informazioni dettagliate sugli annunci di prova GMA Next-Gen SDK, consulta Attiva gli annunci di prova.
Carica un annuncio
L'esempio seguente carica un singolo annuncio:
Kotlin
// Load ads after you initialize MobileAds. InterstitialAd.load( AdRequest.Builder(adUnitId).build(), object : AdLoadCallback<InterstitialAd> { override fun onAdLoaded(ad: InterstitialAd) { // Interstitial ad loaded. interstitialAd = ad } override fun onAdFailedToLoad(adError: LoadAdError) { // Interstitial ad failed to load. Log.e(TAG, "Interstitial ad failed to load: ${adError.message}") interstitialAd = null } }, )
Java
// Load ads after you initialize MobileAds. InterstitialAd.load( new AdRequest.Builder(adUnitId).build(), new AdLoadCallback<InterstitialAd>() { @Override public void onAdLoaded(@NonNull InterstitialAd ad) { // Interstitial ad loaded. interstitialAd = ad; } @Override public void onAdFailedToLoad(@NonNull LoadAdError adError) { // Interstitial ad failed to load. Log.e(TAG, "Interstitial ad failed to load: " + adError.getMessage()); interstitialAd = null; } });
Durante i test, utilizza l'ID unità pubblicitaria di test:
ca-app-pub-3940256099942544/1033173712.
Mostra l'annuncio
Per mostrare un annuncio interstitial, chiama il metodoshow.
L'esempio seguente mostra l'annuncio:
Kotlin
private fun showAd(interstitialAd: InterstitialAd, activity: Activity) { // Show the ad. interstitialAd.show(activity) }
Java
private void showAd(InterstitialAd interstitialAd, Activity activity) { // Show the ad. interstitialAd.show(activity); }
Ascolta gli eventi degli annunci
Prima di mostrare l'annuncio, ascolta gli eventi del ciclo di vita dell'annuncio. L'esempio seguente registra i callback per gli eventi degli annunci:
Kotlin
// Listen for ad events. val ad = interstitialAd if (ad == null) { Log.e(TAG, "Interstitial ad is not ready yet.") return } ad.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. Log.e(TAG, "Interstitial ad failed to show: ${fullScreenContentError.message}") } override fun onAdImpression() { // Interstitial ad did record an impression. } override fun onAdClicked() { // Interstitial ad did record a click. } }
Java
// Listen for ad events. if (interstitialAd == null) { Log.e(TAG, "Interstitial ad is not ready yet."); return; } interstitialAd.setAdEventCallback( new InterstitialAdEventCallback() { @Override public void onAdShowedFullScreenContent() { // Interstitial ad did show. } @Override public void onAdDismissedFullScreenContent() { // Interstitial ad did dismiss. interstitialAd = null; } @Override public void onAdFailedToShowFullScreenContent( @NonNull FullScreenContentError fullScreenContentError) { // Interstitial ad failed to show. Log.e(TAG, "Interstitial ad failed to show: " + fullScreenContentError.getMessage()); } @Override public void onAdImpression() { // Interstitial ad did record an impression. } @Override public void onAdClicked() { // Interstitial ad did record a click. } });