しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

【iOS】AdMobネイティブ広告を試してみる

2017/10/17追記

*ネイティブ エクスプレス広告ですが、2018年3月に廃止予定とのアナウンスがありました。

f:id:llcc:20171017153833p:plain

はじめに

AdMobでネイティブ エクスプレス広告というものを試してみました。

広告ユニットの作成

広告ユニット作成は、バナー広告同様にAdMobの管理画面から行います。
右端に"ネイティブ"というものがあるので、それを選択して作成します。

f:id:llcc:20170430231121p:plain

Startボタンを押すと、広告サイズ選択画面に移動します。
今回は"小"を選択しました。

f:id:llcc:20170430231249p:plain

サイズを選択すると、テンプレート選択画面に移動します。

f:id:llcc:20170430231346p:plain

中と大のテンプレートは下の通りです。

f:id:llcc:20170430231628p:plain

f:id:llcc:20170430231641p:plain

最後にデザインをカスタマイズします。

f:id:llcc:20170430232033p:plain

デザインはCSSを使ってカスタマイズする事もできます。

f:id:llcc:20170430232059p:plain

広告の実装

まずはAdMobをCocoaPodsでインストールします。

platform :ios, '9.0'

target 'Rss' do
  use_frameworks!

  pod 'Firebase/Core'
  pod 'Firebase/AdMob'
end

次はStoryboardに広告を追加します。
ビューを追加して、クラスをGADNativeExpressAdViewに設定します。

f:id:llcc:20170501104630p:plain

最後にViewControllerに広告読み込み処理を追加すれば完了です。

class ViewController: UIViewController {
    @IBOutlet weak var adView: GADNativeExpressAdView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        adView.adUnitID = "自分のAdUnitID"
        adView.rootViewController = self
        adView.load(GADRequest())
        adView.delegate = self
        adView.backgroundColor = UIColor.blue
   }
}    

f:id:llcc:20170501105153p:plain

Error: No ad to showエラーが出る場合

GADNativeExpressAdViewビューのサイズが適切でないとError: No ad to showエラーになります。
広告の推奨サイズは以下の通りです。

f:id:llcc:20170501104846p:plain