Admob Interstitial Ads in Android – Admob Ads v-20.2.0
Hello Guys, In this tutorial, we will see how to implement Admob Interstitial Ads in Android. So to Implement Admob ads Open Android Studio and create a project. Now follow the below steps
Interstitial ads are full-screen ads that cover the interface of their host app. They’re typically displayed at natural transition points in the flow of an app, such as between activities or during the pause between levels in a game. When an app shows an interstitial ad, the user has the choice to either tap on the ad and continue to its destination or close it and return to the app.
We already Integrated Admob SDK in the last tutorial. If you haven’t read that. Check out here.
Let’s See the Code.
Table of Contents
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <Button android:id="@+id/interstitial_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" android:layout_centerInParent="true" android:textSize="20sp"/> <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" ads:adSize="BANNER" ads:adUnitId="ca-app-pub-3940256099942544/6300978111"> </com.google.android.gms.ads.AdView> </RelativeLayout>
Note: For this Tutorial, I have implemented a Button to show Interstitial. So in your case implement as you like. Make Sure you follow Admob Policies.
MainActivity.java
package com.example.admobsampleapp; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.Toast; import com.google.android.gms.ads.AdError; import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; import com.google.android.gms.ads.FullScreenContentCallback; import com.google.android.gms.ads.LoadAdError; import com.google.android.gms.ads.MobileAds; import com.google.android.gms.ads.initialization.InitializationStatus; import com.google.android.gms.ads.initialization.OnInitializationCompleteListener; import com.google.android.gms.ads.interstitial.InterstitialAd; import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback; public class MainActivity extends AppCompatActivity { private AdView mAdView; private Button interstitial_button; private InterstitialAd mInterstitialAd; private static final String TAG = "MainActivity"; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); interstitial_button = findViewById(R.id.interstitial_button); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); mAdView = findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest); loadinterstitial(); interstitial_button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showInterstitial(); if (mInterstitialAd == null) { loadinterstitial(); } } }); } private void loadinterstitial(){ 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. MainActivity.this.mInterstitialAd = interstitialAd; Log.i(TAG, "onAdLoaded"); interstitialAd.setFullScreenContentCallback( new FullScreenContentCallback() { @Override public void onAdDismissedFullScreenContent() { // Called when fullscreen content is dismissed. // Make sure to set your reference to null so you don't // show it a second time. MainActivity.this.mInterstitialAd = null; Log.d("TAG", "The ad was dismissed."); } @Override public void onAdFailedToShowFullScreenContent(AdError adError) { // Called when fullscreen content failed to show. // Make sure to set your reference to null so you don't // show it a second time. MainActivity.this.mInterstitialAd = null; Log.d("TAG", "The ad failed to show."); } @Override public void onAdShowedFullScreenContent() { // Called when fullscreen content is shown. Log.d("TAG", "The ad was shown."); } }); } @Override public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) { // Handle the error Log.i(TAG, loadAdError.getMessage()); mInterstitialAd = null; } }); } private void showInterstitial() { // Show the ad if it's ready. Otherwise toast and restart the game. if (mInterstitialAd != null) { mInterstitialAd.show(this); } else { Toast.makeText(this, "Ad did not load", Toast.LENGTH_SHORT).show(); } } }
In the next tutorial, we will try to implement Admob Native Ads. Until then Check our Android Tutorials here.