How to implement AdMob collapsible Banner ads in android

📌 Implementation in build.gradle

implementation 'com.google.android.gms:play-services-ads:23.3.0'

🌐 Android Internet Permissions in AndroidManifest.xml


<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    

⚙️ Meta-data Tag in AndroidManifest.xml


<meta-data 
    android:name="com.google.android.gms.ads.APPLICATION_ID" 
    android:value="ca-app-pub-3940256099942544~3347511713" />
    

🖥️ XML Code in activity_main.xml


<FrameLayout
    android:id="@+id/adContainer"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"  />
    

💻 Java Code Inside AppCompatActivity MainActivity.java


private static final String AD_UNIT_ID = "ca-app-pub-3940256099942544/2014213617";
private AdView adView;
    

📌 Inside OnCreate Method in MainActivity.java


MobileAds.initialize(this, initializationStatus -> {}); 
loadBannerAd();
    

📌 Outside OnCreate Method in MainActivity.java


private void loadBannerAd() {
    FrameLayout adContainer = findViewById(R.id.adContainer);
    adView = new AdView(this);
    adView.setAdUnitId(AD_UNIT_ID);
    adView.setAdSize(getAdSize());
    adContainer.addView(adView);

    Bundle extras = new Bundle();
    extras.putString("collapsible", "bottom");

    AdRequest adRequest = new AdRequest.Builder()
            .addNetworkExtrasBundle(AdMobAdapter.class, extras)
            .build();

    adView.loadAd(adRequest);
}

private AdSize getAdSize() {
    DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
    int adWidthPixels = Build.VERSION.SDK_INT >= Build.VERSION_CODES.R
            ? getWindowManager().getCurrentWindowMetrics().getBounds().width()
            : displayMetrics.widthPixels;

    return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, (int) (adWidthPixels / displayMetrics.density));
}
    

🎥 Watch the Video Tutorial

Share this post with your friends

See the previous post See the next post
No one has commented on this post yet
Click here to comment
comment url