GoogleAdMobで画面下にバナー広告を表示する方法。
1. ライブラリ「Google-Mobile-Ads-SDK」をインストール&インポート
ライブラリをpodインストールして、importの記述を書く。
pod ‘Google-Mobile-Ads-SDK’
import GoogleMobileAds
2. サイトで広告ユニットを作成
GoogleAdMobサイトにログインして、広告ユニットを作成していく。
新規アプリを追加する。
広告タイプ「バナー」を選択し、広告名を設定。
3. AppDelegate.swiftに初期化するためのコードを記述。
AppDelegate.swiftに以下の初期化をするためのコードを追加。
※importを忘れずに。
import UIKit import GoogleMobileAds //←追加 @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { GADMobileAds.sharedInstance().start(completionHandler: nil) //←追加 return true }
4. 広告を表示させるUIViewを準備
UIViewにバナーを表示させていく。
画面下部にUIViewを適当な大きさで設置。
UIViewのクラスをGADBannerViewにする。(ADBannerViewと間違えないように注意!)
IBOutletで繋ぐ。このときtypeはGADBannerViewになってる。
5. テスト用の広告IDを取得
広告IDを取得する。
リリースするまではテスト用IDを使ったほうがいい。
テスト用IDはガイドに載っている。
GoogleAdMob iOSバナー広告ガイド
ちなみに本番IDは広告ユニットの下に記載されている↓
ViewControllerに以下の記述をして、取得した広告IDを入れる。
override func viewDidLoad() { super.viewDidLoad() //ここに広告ID入れる bannerView.adUnitID = "ca-app-pub-6698574127164413/4432480747" bannerView.rootViewController = self bannerView.load(GADRequest()) }
6. Info.plistを設定する
Info.plistを設定していく。
記述するコードは、
広告ユニット→実装手順→GoogleMobileAdsSDKガイド
のスタートガイドに記載されている。
xcodeにて、control押しながらinfo.plistクリック→openas→soucecode
でソースコード を開き、<dict>の下にコピペする。
control押しながらinfo.plistクリック→openas→plistでplistを開くと、一番上に1行追加されている。
7. 完成
これでバナー広告が表示される。
リリースする時に本番IDに変えるのを忘れずに。
またUIViewを大きくすると勝手にレクタングルになる。
すべてのコード
import UIKit import GoogleMobileAds //←追加 @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { GADMobileAds.sharedInstance().start(completionHandler: nil) //←追加 return true }
import UIKit import GoogleMobileAds class ViewController: UIViewController { @IBOutlet weak var bannerView: GADBannerView! override func viewDidLoad() { super.viewDidLoad() bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716" bannerView.rootViewController = self bannerView.load(GADRequest()) } }