iOSの新言語SwiftでAdMobの実装方法を検証
Objective-Cで書かれているAdMobをSwiftでどうやって使うのか気になったので検証したメモです。
検証環境
Xcode 6.0 beta
GoogleMobileAdsSDkiOS-6.9.2
手順
1、Xcode6で新規プロジェクトを作成
XcodeのメニューからFile>New>Project>「Single View Application」(ここでは例として)を選択。
Language: の選択ではSwiftを選択してプロジェクトを作成します。
2、AdMobのSDKをプロジェクトに追加
今回はここの詳しい説明は省略します。
基本的に以下の公式情報の通りで導入できます。
AdSupportなど必要なフレームワークの追加とOther Linker Flagsに-ObjCを追加を忘れないようにします。
ダウンロード先
https://developers.google.com/mobile-ads-sdk/download#downloadios
プロジェクトへの追加方法
https://developers.google.com/mobile-ads-sdk/docs/#ios
AdMobについては、そのうち別記事で詳しく紹介する予定です。
3、SwiftからAdMob SDKのコードを呼び出せるようにする
XcodeのメニューからFile>New>File から「Header File」を選択し、
Swift_Bridging_Headerというファイル名(任意)にして、Swift_Bridging_Header.h というファイルを作ります。
Swift_Bridging_Header.h のファイル内に #import "GADBannerView.h" を記述します。
Swift_Bridging_Header.h #import "GADBannerView.h"
プロジェクトファイルを選択>TARGETS>Build Settings>Swift Compiler - Code Generation>Objective-C Bridging Header に
$(SRCROOT)/$(PROJECT)/Swift_Bridging_Header.h と書いてパスを追加します。
4、SwiftでAdMobのバナー広告を表示する
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. var bannerView: GADBannerView = GADBannerView(); bannerView = GADBannerView(adSize:kGADAdSizeBanner); bannerView.adUnitID = "ここに広告ユニットIDを書く"; bannerView.delegate = self; bannerView.rootViewController = self; self.view.addSubview(bannerView); bannerView.loadRequest(GADRequest()); } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }
以上で、AdMobのバナー広告を表示することができます。
デリゲートの実装については後ほど続きを書きます。