How to implement Banner Ads in Android studio 2024 in JAVA
How to implement Banner Ads in Android studio 2024 in JAVA:
In this blog I will describe How to implement Admob Banner Ads in Android studio 2024 in JAVA.
Step 1 : Add Internet Permission and Admob Metadata
Copy this code and paste into your manifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
<!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713"/>
Step 2 : Implement Admob Library
Copy this code and paste into your build.gradle(Module:app)
// Admob Ads Library
implementation 'com.google.android.gms:play-services-ads:23.1.0'
Step 3 : Initialize Admob
Copy this code and paste into your MainActivity.java in onCreate method
// Admob Initialize
new Thread(
() -> {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(this, initializationStatus -> {});
})
.start();
Step 4 : Add Banner Container in activity_main.xml
Copy this code and paste into your 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:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="#101120"
>
<TextView
android:id="@+id/header_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="অশরীরী"
android:layout_marginTop="15sp"
android:textSize="18sp"
android:textColor="#E9FFEE"
android:textStyle="bold"
android:textAlignment="center"
android:layout_alignParentTop="true"/>
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/header_title"
android:layout_above="@id/adViewContainer"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="স্যার এই নিন চাবি” সুব্রত চাবির গোছা এগিয়ে দিলো। চাবি নিয়ে রাজশেখর বললেন “তুমি ছাড়া এই বাড়িতে আর কে কে আছে কাজ করা দেখাশোনা করার জন্য?” “আমিই আপাতত কেয়ারটেকারের ভূমিকা পালন করছি। চম্পা আর গৌর এই বাড়ি ঝেড়ে পুঁছে গুছিয়ে রাখে। যারা পিকনিকের জন্য আসে চম্পা তাদের রান্নাবান্নাও করে দেয়।
\n\nতবে রাতে কেউ থাকে না তো আমরাও কেউ রাতে থাকি না। সন্ধ্যের মধ্যে কাজ শেষ করে বাড়ি ফিরে যাই। আমাদের বাড়ি অবশ্য খুব দূরে নয়। এই বাড়ির বাউন্ডারির ঠিক বাইরেই কিছু ঘর আছে সেখানেই থাকি। আসলে বাড়ির যিনি প্রথম মালিক ছিলেন তিনি এই ব্যবস্থাই করেছিলেন” “ঠিক আছে। তোমাকে ডাকলে যাতে পাওয়া যায় তার কি কোন ব্যবস্থা আছে?”
\n\n“হ্যাঁ আছে স্যার। যে ঘরে আপনারা শোবেন সেই ঘরে একটা দড়ি ঝুলতে দেখবেন। সেটা টানলে আমার ঘরের ঘণ্টাটা বেজে উঠবে, আমি জানতে পারবো আপনারা ডাকছেন” “তুমি তো আমাকে সেই আদ্যিকালের গল্প শোনাচ্ছ। তোমার মোবাইল নেই যাতে ফোন করলে তুমি জানতে পারবে?” “হ্যাঁ আছে স্যার। তবে বুঝতেই তো পারছেন গ্রামাঞ্চল তো সন্ধ্যার পর ভালোভাবে টাওয়ার কানেকশন পাওয়া যায় না” “ওঃ ঠিক আছে।
\n\nতা তুমি কি এখনি চলে যাবে?” “তা কেন স্যার। আপনারা রাতে কি খাবেন সেটা বলে দিলে চম্পাকে দিয়ে বানিয়ে ঘণ্টাখানেক পরে এসে পৌঁছে দিয়ে যাবো” রাজ ওর বন্ধু অনিমেষের দিকে তাকিয়ে বললেন “কি হে রাতে কি খাবে? এরকম ব্যাপার জানলে খাবার কিনেই নিয়ে আসতাম আসার পথে” অনি বললেন “আরে অত চিন্তা কীসের। ও তো বলছে রান্না করিয়ে দিয়ে যাবে” “তাহলে বলো কি খাবে?” “বেশি আর কি লুচি আর পাঁঠার কষা মাংস, আর একটু গা গরম করার পানীয়” তারপর সুব্রতর দিকে তাকিয়ে বলল “কি হে হবে তো?” “হ্যাঁ হ্যাঁ।
\n\nআমিই নিয়ে আসবো” “ঠিক আছে তাহলে এসো। আমরা একটু ঘুরে দেখি বাড়িটা কেমন। আর যে ঘরে শোব তা কেমন সাজিয়ে গুছিয়ে রেখেছো তোমরা” সুব্রত চলে যাওয়ার পর রাজ আর অনি নীচের ড্রয়িংরুম থেকে পায়ে পায়ে উঠে আসে দোতলায়। পুরনোদিনের জমিদারদের বাড়ি গঙ্গার পাড়ে। এক কালে নাকি জমিদাররা এখানে থাকতো তারপর কোন এক পুরুষ শহরের দিকে বাড়ি করে ওখানে সপরিবারে চলে যান। তারপর থেকে বাড়িটা পড়ে ছিল। কয়েক পুরুষ পর এক ছেলে যে বর্তমানে বাড়ির মালিক বাড়িটা ভাড়া দিচ্ছেন পিকনিক করার জন্য।
\n\nএতো বড় বাড়ি দেখাশোনা করে রাখার খরচ প্রচুর। বাড়ি ভাড়া দিলে কিছু টাকা তো উঠে আসে। তাই এই ব্যবস্থা। বাড়ির ভেতরে পা দেওয়ার পর ওদের দুজনেরই মনে হচ্ছিলো যেন সত্যি জমিদার আমলে এসে উপস্থিত হয়েছেন। ওদের ঘরে এসে উপস্থিত হলেন ওরা দুজনে। বেশ উঁচু রাজকীয় খাটে শুভ্র সফেন বিছানা পাতা। তার সাথে বালিশ কোলবালিশ, সব আছে। ঝাড়বাতিটা জ্বলছে, এক মায়াবী পরিবেশ তৈরি হয়েছে। পাখার সুইচ দিতে পাখা বেশ জোরে ঘুরতে শুরু করলো।"
android:layout_margin="15sp"
android:lineHeight="25dp"
android:textSize="15sp"
android:textColor="#E9FFEE"
tools:ignore="UnusedAttribute"
android:justificationMode="inter_word"
/>
</LinearLayout>
</ScrollView>
<!-- ***** START : Banner Ad Container ***** -->
<LinearLayout
android:id="@+id/adViewContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true"
android:layout_marginTop="15dp"
>
</LinearLayout>
<!-- ***** END : Banner Ad Container ***** -->
</RelativeLayout>
Copy this code and paste into your 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:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="#101120"
>
<TextView
android:id="@+id/header_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="অশরীরী"
android:layout_marginTop="15sp"
android:textSize="18sp"
android:textColor="#E9FFEE"
android:textStyle="bold"
android:textAlignment="center"
android:layout_alignParentTop="true"/>
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/header_title"
android:layout_above="@id/adViewContainer"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="স্যার এই নিন চাবি” সুব্রত চাবির গোছা এগিয়ে দিলো। চাবি নিয়ে রাজশেখর বললেন “তুমি ছাড়া এই বাড়িতে আর কে কে আছে কাজ করা দেখাশোনা করার জন্য?” “আমিই আপাতত কেয়ারটেকারের ভূমিকা পালন করছি। চম্পা আর গৌর এই বাড়ি ঝেড়ে পুঁছে গুছিয়ে রাখে। যারা পিকনিকের জন্য আসে চম্পা তাদের রান্নাবান্নাও করে দেয়।
\n\nতবে রাতে কেউ থাকে না তো আমরাও কেউ রাতে থাকি না। সন্ধ্যের মধ্যে কাজ শেষ করে বাড়ি ফিরে যাই। আমাদের বাড়ি অবশ্য খুব দূরে নয়। এই বাড়ির বাউন্ডারির ঠিক বাইরেই কিছু ঘর আছে সেখানেই থাকি। আসলে বাড়ির যিনি প্রথম মালিক ছিলেন তিনি এই ব্যবস্থাই করেছিলেন” “ঠিক আছে। তোমাকে ডাকলে যাতে পাওয়া যায় তার কি কোন ব্যবস্থা আছে?”
\n\n“হ্যাঁ আছে স্যার। যে ঘরে আপনারা শোবেন সেই ঘরে একটা দড়ি ঝুলতে দেখবেন। সেটা টানলে আমার ঘরের ঘণ্টাটা বেজে উঠবে, আমি জানতে পারবো আপনারা ডাকছেন” “তুমি তো আমাকে সেই আদ্যিকালের গল্প শোনাচ্ছ। তোমার মোবাইল নেই যাতে ফোন করলে তুমি জানতে পারবে?” “হ্যাঁ আছে স্যার। তবে বুঝতেই তো পারছেন গ্রামাঞ্চল তো সন্ধ্যার পর ভালোভাবে টাওয়ার কানেকশন পাওয়া যায় না” “ওঃ ঠিক আছে।
\n\nতা তুমি কি এখনি চলে যাবে?” “তা কেন স্যার। আপনারা রাতে কি খাবেন সেটা বলে দিলে চম্পাকে দিয়ে বানিয়ে ঘণ্টাখানেক পরে এসে পৌঁছে দিয়ে যাবো” রাজ ওর বন্ধু অনিমেষের দিকে তাকিয়ে বললেন “কি হে রাতে কি খাবে? এরকম ব্যাপার জানলে খাবার কিনেই নিয়ে আসতাম আসার পথে” অনি বললেন “আরে অত চিন্তা কীসের। ও তো বলছে রান্না করিয়ে দিয়ে যাবে” “তাহলে বলো কি খাবে?” “বেশি আর কি লুচি আর পাঁঠার কষা মাংস, আর একটু গা গরম করার পানীয়” তারপর সুব্রতর দিকে তাকিয়ে বলল “কি হে হবে তো?” “হ্যাঁ হ্যাঁ।
\n\nআমিই নিয়ে আসবো” “ঠিক আছে তাহলে এসো। আমরা একটু ঘুরে দেখি বাড়িটা কেমন। আর যে ঘরে শোব তা কেমন সাজিয়ে গুছিয়ে রেখেছো তোমরা” সুব্রত চলে যাওয়ার পর রাজ আর অনি নীচের ড্রয়িংরুম থেকে পায়ে পায়ে উঠে আসে দোতলায়। পুরনোদিনের জমিদারদের বাড়ি গঙ্গার পাড়ে। এক কালে নাকি জমিদাররা এখানে থাকতো তারপর কোন এক পুরুষ শহরের দিকে বাড়ি করে ওখানে সপরিবারে চলে যান। তারপর থেকে বাড়িটা পড়ে ছিল। কয়েক পুরুষ পর এক ছেলে যে বর্তমানে বাড়ির মালিক বাড়িটা ভাড়া দিচ্ছেন পিকনিক করার জন্য।
\n\nএতো বড় বাড়ি দেখাশোনা করে রাখার খরচ প্রচুর। বাড়ি ভাড়া দিলে কিছু টাকা তো উঠে আসে। তাই এই ব্যবস্থা। বাড়ির ভেতরে পা দেওয়ার পর ওদের দুজনেরই মনে হচ্ছিলো যেন সত্যি জমিদার আমলে এসে উপস্থিত হয়েছেন। ওদের ঘরে এসে উপস্থিত হলেন ওরা দুজনে। বেশ উঁচু রাজকীয় খাটে শুভ্র সফেন বিছানা পাতা। তার সাথে বালিশ কোলবালিশ, সব আছে। ঝাড়বাতিটা জ্বলছে, এক মায়াবী পরিবেশ তৈরি হয়েছে। পাখার সুইচ দিতে পাখা বেশ জোরে ঘুরতে শুরু করলো।"
android:layout_margin="15sp"
android:lineHeight="25dp"
android:textSize="15sp"
android:textColor="#E9FFEE"
tools:ignore="UnusedAttribute"
android:justificationMode="inter_word"
/>
</LinearLayout>
</ScrollView>
<!-- ***** START : Banner Ad Container ***** -->
<LinearLayout
android:id="@+id/adViewContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true"
android:layout_marginTop="15dp"
>
</LinearLayout>
<!-- ***** END : Banner Ad Container ***** -->
</RelativeLayout>
Step 4 : Java Code for Banner Ads
Copy this code and paste this code into your MainActivity.java bellow onCreate
// Step 1 : Implementation Admob Banner Ads ============================================== START
private void loadBanner(LinearLayout adViewContainer) {
// Create a new ad view.
AdView adView = new AdView(this);
adView.setAdSize(getAdSize(adViewContainer));
adView.setAdUnitId("ca-app-pub-3940256099942544/9214589741");
// Replace ad container with new ad view.
adViewContainer.removeAllViews();
adViewContainer.addView(adView);
// Start loading the ad in the background.
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
}
private AdSize getAdSize(LinearLayout adViewContainer) {
// Determine the screen width (less decorations) to use for the ad width.
Display display = getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
float density = outMetrics.density;
float adWidthPixels = adViewContainer.getWidth();
// If the ad hasn't been laid out, default to the full screen width.
if (adWidthPixels == 0) {
adWidthPixels = outMetrics.widthPixels;
}
int adWidth = (int) (adWidthPixels / density);
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
}
// Step 1 : Implementation Admob Banner Ads ================================================ END
Copy this code and paste this code into your MainActivity.java in onCreate
// Step 2 : Finding adViewContainer and call loadBanner() method
LinearLayout adViewContainer = findViewById(R.id.adViewContainer);
loadBanner(adViewContainer);