google-admobArkadaşlarımdan gelen bu yazının konusu, başlıktan da anlaşılacağı üzere android tabanlı uygulama ve oyunlarınızda Google Admob reklam kullanımı olacak. Burak Çimen’ e teşekkürlerimi sunayım ve sizleri yazıyla başbaşa bırakayım.

Bildiğiniz gibi google Türk geliştiricilere uygulama satma veya uygulama içi satış fırsatı sunmuyor. Bu sebepten Türk geliştiricilerin tek gelir kaynağı reklamlar oluyor. Admob dışındaki reklam kaynaklarının kullanımın da Admob’ a çok benzer olduğu için hepsini ayrı ayrı anlatmayacağım.

Öncelikle admob.com adresinden sisteme giriş yapıp uygulamalarda kullanmak üzere bir reklam oluşturalım. Reklam oluşturma aşamasında Admob bize iki farklı reklam çeşidi sunmaktadır.
-Banner Reklamı
-Geçiş Reklamı(Tam ekran reklamlar)

Reklamları oluşturup id’ lerini aldıktan sonra (id’ ler şuna benzemektedir: “ca-app-pub-1234567890123/123456”) oluşturulan reklamların uygulama içinde gösterilmesi işlemine admob kütüphanesi ile devam edelim.



 

Buradan Google Admob’un kullanımı için gerekli olan Admob kütüphanesini indiriyoruz. İndirilen jar uzantılı dosyayı projenizin libs klasörüne kopyalayıp Build Path’ e ekledikten sonra reklam gösterimi için kodlama dışındaki tüm işlemleri halletmiş oluyoruz. Bu aşamadan sonra uygulama içinde reklamları görüntülemek için yazılacak kodları iki reklam çeşidi için aşağıda inceleyebilirsiniz.

Geçiş Reklamı Kullanımı

Geçiş reklamı’ nın gösterileceği activity sınıfı, AdListener interface’ ini implement etmelidir.(Bir sınıf birden çok interface’ i implement edebilir.) İmplement edilen Adlistener interface’ i bizi şu metotların içini yazmaya zorlar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@Override
public void onDismissScreen(Ad arg0) {
    // TODO Auto-generated method stub 
}
@Override
public void onFailedToReceiveAd(Ad arg0, ErrorCode arg1) {
    // TODO Auto-generated method stub 
}
@Override
public void onLeaveApplication(Ad arg0) {
    // TODO Auto-generated method stub 
}
@Override
public void onPresentScreen(Ad arg0) {
    // TODO Auto-generated method stub 
}
@Override
public void onReceiveAd(Ad arg0) {
    // TODO Auto-generated method stub
    if (arg0 == interstitial) {
        interstitial.show();
       }
}

Bu 5 metot, adından da anlaşılacağı üzere, yazıldığı ekranın çeşitli durumlarını(ekrana geldiği an, uygulamadan çıkıldığı an vs.) yakalayan metotlar. Bunların dışında iki metottan ilki onFailedToReceiceAd, reklam oluşturulma aşamasında hata oluştuğunda çalışır. Diğer metot olan onReceiveAd() metodu ise reklamın uygulamaya ulaştığı anı yakalar. Bu metot içinde reklamın gösterilmesini sağlayan kod bloğunu yazıyoruz.

Geçiş reklamı için;
private InterstitialAd interstitial;
nesnesini kullanılacağı için sınıf içinde global bir değişken olarak bu nesne tanımlanmalı ve onCreate metodu içinde oluşturulmalı:

1
2
3
4
5
interstitial = new InterstitialAd(
RadyoListeleActivity.this,"ca-app-pub-123456789132/123456");
AdRequest adRequest = new AdRequest();                             
interstitial.loadAd(adRequest);
interstitial.setAdListener(RadyoListeleActivity.this);

Banner Reklamı Kullanımı

Bu kısım çok daha kolay sadece bir kod grubu kullanmanız gerekecek. Tek farkı banner reklamının gösterileceği alanı bir LinearLayout ile belirlemek. Bunun için reklam gösterilecek sınıfın xml dosyasında bir LinearLayout oluşturulmalı:

1
2
3
4
5
6
7
<LinearLayout
       android:id="@+id/reklamAlani"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:gravity="center_vertical"
       android:orientation="vertical" >
</LinearLayout>

Tanımlanan LinearLayout için yapılacak işlemler, her zamanki gibi bir View öğesinin referansını findViewById metodu ile almak, reklam görünümünü oluşturmak ve reklam görünümünü LinearLayout’ a eklemek olacak. Sonrasında ise loadAd metodu ile reklamın yüklenme işlemi başlamış olacaktır:

1
2
3
4
5
LinearLayoutlayout=(LinearLayout)findViewById(R.id.reklamAlani);
        adview = new AdView(this, AdSize.SMART_BANNER,
                "ca-app-pub-123456789132/123456");
        layout.addView(adview);
        adview.loadAd(new AdRequest());

ÖNEMLİ!!!
Tüm işlemler bittikten sonra androidmanifest.xml dosyasına aşağıdaki izinleri ve yetkileri eklemeyi kesinlikle unutmayın!

1
2
3
4
5
6
7
8
9
10
11
12
13
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<meta-data android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" android:value="true" />
.
.<!--Burada diğer uygulama izinleri olabilir-->
.
<application>
     .
     .<!-- Burada diğer Activity tanımlamaları olabilir-->
     .
     <activity android:name="com.google.ads.AdActivity"
         android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
</application>

NOT!
Eğer ‘not enought space for banner‘ hatası alıyorsanız xml’in ana(root) LinearLayout’ unun margin değerlerini sıfır yapmalısınız.

Android uygulamalarında admob reklam çeşitlerinden geçiş reklamı(Interstitial Ad) ve banner reklamlarının kullanımı bu şekildeydi. Bol kazançlar. :)

17 Comments to “Android Uygulamalarda ADMob Reklam Kullanımı”

Post comment

Time limit is exhausted. Please reload the CAPTCHA.