[iPhone] AdMob 広告の設置、Interstitial

iPhone アプリを販売して夢の左うちわ生活、と思ったらダウンロードが少なすぎる…。という人には、売れないアプリを販売するより、広告の方が儲かります。特にInterstitial広告はうまく表示させると効果があるようです。
 
AdMobInterstitial01

Swift 3.1
Xcode 8.3.2

 

AdMob Interstitial

 
公式ガイドはこちらにあります。AdMob iOS ガイド
また以降の説明はFirebaseではなく今までのSDKを使った方法です。何らかの理由でFirebaseを利用できないケースが想定されるので残して起きます。
 

AdMob SDK を導入

 
基本的にはこちらにあるAdMob iOS Banner設定手順と同じです。ただコードの記述とAdMob IDはバナーとは異なります。
 
こちらから Google Mobile Ads SDK をダウンロードします。
 

 
googlemobileadssdkios.zipを解凍するとGoogleMobileAds.frameworkがありますのでそれをプロジェクトに追加します。
 

 
この時にオプションでitemをcopyする設定を入れておくことを忘れずに
 

 
プロジェクトにframeworkが追加されました。
 

 
「Build Phases」タブの「Link Binary With Libraries」に上の frame.work 以下のframeworkを追加していきます。

  1. AdSupport
  2. AudioToolbox
  3. AVFoundation
  4. CoreGraphics
  5. CoreTelephony
  6. EventKit
  7. EventKitUI
  8. MessageUI
  9. StoreKit
  10. SystemConfiguration


 

AdMob Interstitial ID

 
Interstitial IDはBanner IDとは別に取らないといけません。こちらを参照してください。
AdMob Interstitial ID 取得
 

コードを記述

 
コードですが、ここでは、本番のAdMob IDとSimulator ID, 実機IDをフラグで切り替えるようにしてあります。
シミュレータの場合にはIDは、kGADSimulatorID?を使いますが
実機のテストモードでのIDは一度アプリを走らせ広告を出させると
 

 
こんなメッセージがでます。ここで出てきた 61b0154xxxxxxxxxxxxxxxxxxxxxxxe0 を
DEVICE_TEST_IDに置き換えてやります
 
ViewController.swift

 
このケースでは、interstitial のロードに時間がかかると表示されないので、3秒後にpresentFromRootViewController(self)で前面に表示させるようにしています。ゲームでのページ切り替えなど、起動から時間がたっていれば必要ないでしょう。

尚、2017/5/21、実機テストでは表示が出なくなっています。simulatorとリアルのAdMob IDでのみ表示されましたが原因不明です。そのうち修正されるのかやり方が変わったのか、あるいは早くFirebaseに移れということかもしれません(汗
GoogleMobileAdsSdkiOS-7.20.0
iOS10.3
Swift3.1
 


ページのトップへ戻る

シェアする

  • このエントリーをはてなブックマークに追加

フォローする