Android – Banner Reklam Ekleme(Admob-Kotlin)

Merhaba sevgili android geliştiricileri. Geliştiriciler olarak ana hedefimiz bazı durumlarda reklam gelirleri olabiliyor. Bu gibi durumlarda güvenilir reklam ağları kullanmak oldukça önemli. En yaygın olan reklam ağlarından birisi Admob. Bu yazımda sizlere Admob Banner reklam ekleme göstereceğim.

Admob Uygulama ve Reklam Oluşturma

Önce Admob sitesine giderek google hesabımızla giriş yapalım.

1 – Uygulamalar > Uygulama Ekle‘ye tıklayarak uygulama oluşturalım.

2 – Uygulamamız henüz Play Store’da olmadığı için Hayır’ı seçelim.

3 – Uygulama adı ve Platfom seçerek devam edelim.

4 – Artık reklam uygulamamız hazır. Reklam Birimi Oluştur seçeneğine tıklayarak devam edelim.

5 – Açılan reklam seçeneklerinden konumuz ile alakalı olan Banner reklamı seçelim.

6 – Son olarak oluşturacağımız Banner Reklam için bir isim girelim(BannerView) ve ‘Reklam Birimi Oluştur’ tuşu ile kurulumu tamamlayalım.

7 – Açılan ekranda bize Uygulama Kimliği ve Reklam Kimliği verecektir. Bu kimlik verilerini kopyalayarak android projemize geçelim.

Android Admob Kurulumu

Kurulumu Google Developers dökümanlarından yardım alarak yapacağız.

1 – Öncelikle <project>/app/build.gradle içerisine:

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

Kütüphanesini ekliyoruz. Ardından ‘Sync Now‘ tuşu ile senkronizasyonu başlatıyoruz.

2 – AndroidManifest.xml dosyamıza aşağıdaki kodu kendi uygulama kimliğimiz ile birlikte ekliyoruz.

<manifest>

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    
    <application>
      <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="UYGULAMA_KIMLIGI"/>
    </application>
</manifest>

3 – MainActivity.kt içerisinde onCreate() metodu altına aşağıdaki init kodunu ekliyoruz.

MobileAds.initialize(this)

4 – AdView‘i ekliyoruz. Eklerken ‘ads:adUnitId‘ değerini Banner Reklam Kimliğimizle değiştiriyoruz.

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    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">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/app_name"
        android:layout_gravity="center"
        android:gravity="center"/>

    <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_gravity="center|bottom"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-3940256099942544/6300978111"/>

</FrameLayout>

5 – Son olarak MainActivity.kt içerisinde AdView‘i tanımlayıp reklamımızı başlatıyoruz.

var adView: AdView = findViewById(R.id.adView)
lateinit var adRequest: AdRequest
if (BuildConfig.DEBUG){ //Eğer proje debug modunda ise reklamları test olarak başlatacağız.
    adRequest = AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build()
} else { //Eğer release modunda ise normal başlatıyoruz.
    adRequest = AdRequest.Builder().build()
}
adView.loadAd(adRequest)
adView.adListener = object: AdListener() {
    override fun onAdLoaded() {
        super.onAdLoaded()
        Log.d("BannerAdsExample", "onAdLoaded")
    }

    override fun onAdClicked() {
        super.onAdClicked()
        Log.d("BannerAdsExample", "onAdClicked")
    }

    override fun onAdClosed() {
        super.onAdClosed()
        Log.d("BannerAdsExample", "onAdClosed")
    }

    override fun onAdFailedToLoad(p0: Int) {
        super.onAdFailedToLoad(p0)
        Log.d("BannerAdsExample", "onAdFailedToLoad")
    }

    override fun onAdImpression() {
        super.onAdImpression()
        Log.d("BannerAdsExample", "onAdImpression")
    }

    override fun onAdLeftApplication() {
        super.onAdLeftApplication()
        Log.d("BannerAdsExample", "onAdLeftApplication")
    }

    override fun onAdOpened() {
        super.onAdOpened()
        Log.d("BannerAdsExample", "onAdOpened")
    }
}

Kurulumu tamamladık. Şimdi uygulamayı emulatörde test edelim.

Testimiz başarı ile tamamlandı ve reklamımız görüntülendi. Bu yazıda android admob banner ad konusuna yer verdik. Proje kodlarına buradan ulaşabilirsiniz. Soru, görüş ve önerileriniz için lütfen yorum yapmayı unutmayın.

Photo of author

Mehmet Kurtgöz

Android Developer.

Yorum yapın