1. Add AdMob App ID in AndroidManifest.xml:
<application
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="@string/admob_AppId"/>
</application>
2. Add dependencies in build.gradle (Module):
implementation("com.google.android.gms:play-services-ads:24.4.0")3. Initialize Mobile Ads in MainActivity
MainActivityMobileAds.initialize(this)
Simple Banner Ads:
3.1: Add in XML Layout
<!-- res/layout/activity_main.xml --><!-- Admob Banner Ads -->
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/admob_BannerAdId"/>
3.2: Add Kt Code Inside onCreate
// Inside onCreate
val adRequest = AdRequest.Builder().build()
binding.adView.loadAd(adRequest)
Adaptive Banner Ads:
4.1: Layout XML with Container
<!-- res/layout/activity_main.xml -->
<LinearLayout
android:id="@+id/adContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center_horizontal" />
4.2 : Kotlin Code
// Top of onCreate
private lateinit var adContainer: LinearLayout
private var adView: AdView? = null
// Load Adaptive Banner (Inside onCreate)
loadAdaptiveBanner()
private fun loadAdaptiveBanner() {
adView = AdView(this)
val adUnitId = getString(R.string.banner_ad_unit_id)
adView?.adUnitId = adUnitId // Replace with real Ad Unit ID "-"
adContainer.removeAllViews()
adContainer.addView(adView)
val adSize = getAdSize()
adView?.setAdSize(adSize)
val adRequest = AdRequest.Builder().build()
adView?.loadAd(adRequest)
}
private fun getAdSize(): AdSize {
val display = windowManager.defaultDisplay
val outMetrics = DisplayMetrics()
display.getMetrics(outMetrics)
val density = outMetrics.density
val adWidthPixels = adContainer.width.takeIf { it > 0 } ?: outMetrics.widthPixels
val adWidth = (adWidthPixels / density).toInt()
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth)
}
override fun onPause() {
adView?.pause()
super.onPause()
}
override fun onResume() {
super.onResume()
adView?.resume()
}
override fun onDestroy() {
adView?.destroy()
super.onDestroy()
}
Test Id:
<resources>
<string name="admob_app_id">ca-app-pub-3940256099942544~3347511713</string>
<string name="banner_ad_unit_id">ca-app-pub-3940256099942544/6300978111</string>
</resources>

No comments:
Post a Comment