Google Mobile Ads SDKをCocoapodsを利用しないで設定する

Google Mobile Ads SDKをCocoapodsを利用しないで設定する毎回、ちょっと思い出しながらやっているので簡単にまとめておく。7.7.1で動作確認した。Cocoapodsを利用しない方針なので、こういうのはたまに必要。

MobileAdsの登録

https://apps.admob.com/ のホームから「新しいアプリの収益化」を選択

広告ユニットID(ca-app-pub-xxxxxxxxxxxxxxxxx/xxxxxxxxxx)が生成される。

Google Mobile Ads SDKをダウンロード

AdMob for iOS

プロジェクトに読み込む

GoogleMobileAds.framework をこのようにプロジェクトに追加する。

SignViewController swift Edited

Linked Frameworks and Librariesに追加されているのを確認する

Arrows xcodeproj

Briding-Headerを作成する

下記のヘッダーファイルをimportする。

#import <GoogleMobileAds/GoogleMobileAds.h>

利用する

ca-app-pub-xxxxxxxxxxxxxxxx/xxxxxxxxxx の部分には最初に作成した広告ユニットIDをセットする。

func showAdIfFreeUser(timer: NSTimer) {
    let adSize = kGADAdSizeBanner
    let bannerView = GADBannerView(adSize: adSize)
    view.addSubview(bannerView)
    bannerView.snp_makeConstraints { [unowned self] (make) -> Void in
        make.left.equalTo(self.view)
        make.top.equalTo(self.view)
        make.width.equalTo(adSize.size.width)
        make.height.equalTo(adSize.size.height)
    }
    bannerView.adUnitID = "ca-app-pub-xxxxxxxxxxxxxxxx/xxxxxxxxxx"
    bannerView.rootViewController = self
    bannerView.delegate = self
    let request = GADRequest()
    request.testDevices = [kGADSimulatorID]
    bannerView.loadRequest(request)
    self.adBannerView = bannerView
}

* 位置の指定にはSnapKitを使っているがこれは別に利用せず、普通のAutoLayoutでよい。

GADBannerViewDelegate

func adViewDidReceiveAd(bannerView: GADBannerView!) {
    // Do something
}
    
func adView(bannerView: GADBannerView!, didFailToReceiveAdWithError error: GADRequestError!) {
    // Do something
}

すごく簡単な設定はこれでよし。

Pocket
LINEで送る

You may also like...