iOS Admob Geçiş Reklam Ekleme

Merhaba Arkadaşlar,

mobilhanem.com üzerinden anlattığımız yayınladığımız derslere iOS’da Admob Geçiş Reklam Ekleme ile devam edeceğiz. ios admob banner reklam dersine buradaki linkten ulaşabilirsiniz.

Reklam geliri,uygulama yazanlar için en büyük gelir kaynaklarından biridir diyebiliriz.Geçiş reklamları ise banner reklmamlara göre daha fazla gelir getirmektedir.Ama önceki derslerimdede belirttiğim gibi kullanıcıyı fazla sıkmadan reklam gösterirsek uygulamamız daha kalıcı olur.Kullanıcıyı fazla sıkan reklamlı uygulamalar daha çabuk kaldırılırlar.

Ben ufak bir örnek ile uygulamamı örneklendirdim.Kaynak kodu indirerek daha rahat anlayabilirsiniz.
[wpdm_file id=30]

Öncelikle aşağıdaki libraryleri projemize eklememiz gerekmektedir.

-AdSupport
-AudioToolbox
-AVFoundation
-CoreGraphics
-CoreTelephony
-EventKit
-EventKitUI
-MessageUI
-StoreKit
-SystemConfiguration

Bu işlem bittikten sonra Build Settings altındaki search kısmında other linker flags diye aratalım ve Altta çıkan Other Linker Flags karşısına “-ObjC” yazalım.

NOT:Yukarıdaki kısımları İOS Admob Banner Reklam Ekleme dersimde örnek resimlerle anlattım o yüzden tekrar detaylıca anlatmayacağım oradan bakabilirsiniz.

Bundan sonrasında ise fazla bir işlem kalmıyor.Bu linkten indirdiğimiz Google SDK‘yi zipten çıkardıktan sonra projemize dahil ediyoruz(Bunuda yukarıdaki linkte ayrıntılı bir biçimde anlatmıştım).Projemize dahil ettikten sonra gerekli işlemleri direk kod üzerinde yapıyoruz. Ben gerekli açıklamaları kod üzerinde anlatmaya çalıştım.

ViewController.h

//////
//////
#import 
#import "GADInterstitial.h"

//Alttaki Delegate kısmını unutmayalım  eklemezsek uygulamamız uyarı verecektir
@interface ViewController : UIViewController



@property(nonatomic, strong) GADInterstitial *interstitial;//interstitial reklam referansı
@property(nonatomic, strong) UIImageView *imageView;//imageView referansı

- (IBAction)reklamGoster:(id)sender;//reklamGoster butonu

@end

Yukarıda dikkat etmemiz gereken konu “GADInterstitialDelegate>” i import etmeyi unutmayalım.

ViewController.m

//////
//////
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

- (IBAction)reklamGoster:(id)sender {
    self.interstitial = [[GADInterstitial alloc] init]; //Reklamı init ediyoruz
    
    self.interstitial.adUnitID = @"ca-app-pub-3940256099942544/4411468910";//Reklam ID mizi koyuyoruz
    
    //Delegate self diyerek interstitialDidReceiveAd,didFailToReceiveAdWithError,interstitialWillDismissScreen metodlarının otomatik çağırılmasını sağlıyoruz
    self.interstitial.delegate = self;
    
    [self.interstitial loadRequest:[GADRequest request]];//Reklamımızı Yüklüyoruz

    self.imageView = [[UIImageView alloc] init];//Reklamın gösterileceği imageView init ediyor yani başlatıyoruz
    
    self.imageView.frame = self.view.frame;//imageview frame boyutlarını Genel View'imizin yani cihazımınzın ekran boyutlarıyla aynı botutları set ediyoruz
    
    self.imageView.contentMode = UIViewContentModeScaleAspectFill;
    
    [self.view addSubview:self.imageView];//imageview'i genel view e ekliyoruz
    
}
- (void)interstitialDidReceiveAd:(GADInterstitial *)interstitial {
    [self.interstitial presentFromRootViewController:self];//reklamın gösterilmesini bu kısım yapıyor.Kendisi otomatik çağırılıyor.
}

- (void)interstitial:(GADInterstitial *)interstitial
didFailToReceiveAdWithError:(GADRequestError *)error {//Reklam gösterilirken hata oluşursa çağırılıyor
    NSLog(@"Reklam Yüklenirken Hata Oluştu");
}

- (void)interstitialWillDismissScreen:(GADInterstitial *)interstitial {//Reklam X butonu ile kapatıldığında çağırılıyor
    NSLog(@"Kapatıldı");
    [self.imageView removeFromSuperview];
}

@end


Evet arkadaşlar bu derste anlatmak istediklerim bu kadar.Tekrar belirtiyorum kaynak kodu incelemeniz daha çabuk anlamanızı sağlayacaktır.

Konu hakkında soru,görüş ve önerilerinizi konu altında yorum bırakabilirsiniz. Sizlerden ricamız facebook.com/mobilhanem sayfamızı beğenmenizdir.

Birdaha ki dersimde AFNetworking ile HttpPost ve JSON Parse etmeyi anlatacağım.O zamana kadar kendinize iyi bakın.

[wpdm_file id=30] 0

Taha Kırca

iOS & Android & Apple Watch Developer, Mobilhanem.com yazarı, Karadeniz Uşağu, Ordu Sevdalısı

10 Yorum

  • Swift ile nasıl yapabileceğimizi anlatsaydınız çok fayalı bir kaynak olurdu.

  • teşekkürler paylaşım için bir sorum olacak. birden fazla interstitial’ı kullanmak istiyorum nasıl yapabilirim

    • reklamı tekrar yüklemen gerekecek.

      [self.interstitial loadRequest:[GADRequest request]];//Bu kod ile Reklamı istediğin yerde tekrar yükleyebilirsin.

          • Oldu fakat bu sefer başka bir sorunla karşılaştık. Bunu iOs Webview ile beraber kullanamıyoruz. Sebebi ne olabilir ?

          • Sorun nerde çıkıyor. Neden kullanamıyorsunuz? Ayrıca şunuda dip not olarak vereyim. İos sadece webview uygulamalarını store’a koymuyor. Reject ediyor uygulamayı. Uygulama sadece webview açan bir uygulama ise Reject yemesi muhtemeldir.

          • Webview sorun değil. İçerde webview olan 4-5 uygulamam var. Mobil tasarım çok önemli o konuda. Sorun şurda. İki tane viewcontroller açıyoruz. Biri Gadıntersitial biri webview. değişkenleri çakışıyor. 1.kontrollerde webview var. İlk o geliyor diğeri açılmıyor. İlginiz için teşekkürler

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?