jarinosuke blog

about software engineering, mostly about iOS

iAd 実装が iOS7 から恐ろしく簡単になってる件

iAd on iOS 7

iOS 6 までは iAd を表示しようとすると、ADBannerView をインスタンス化して layout してなど色々と面倒でした。

iOS 7 では iAd.framework に以下のカテゴリが追加されています。

UIViewController (iAdAdditions)

これを用いる事で、今までのような煩わしいことをほとんど気にせずに iAd を表示する事が出来る様になります。

ユースケース毎に見ていきましょう。

バナー広告を表示したい

以下のプロパティをセットするだけ。

///(1)フレームワークをimport
@import iAd;

///(2)初期化時などに
self.canDisplayBannerAds = YES;

これだけでバナーが画面下に表示されます。

Interstitial 広告を表示したい

事前準備として以下を実行すると Interstitial 広告の情報をプリフェッチしておいてくれます。

//起動時などに
[UIViewController prepareInterstitialAds];

自動的に出すだけならカテゴリで追加された UIViewController の以下のセットするだけです。

@import iAd;

self.interstitialPresentationPolicy = ADInterstitialPresentationPolicyAutomatic;

自動だとさすがに煩わしい、意図したタイミングで、という場合は以下の様に

@import iAd;

self.interstitialPresentationPolicy =  ADInterstitialPresentationPolicyManual;

//意図したタイミングで
[self requestInterstitialAdPresentation];

iAd という選択肢

「iAd だけじゃやってけない」、「SSP 使って出し分けしたいし」、「広告興味ありません」などの意見には、

上記だけでは充分なメリットはないですが、

「広告導入に手間はかけずに、プロダクトに注力したい」「けど最低限の運営費は欲しい」みたいな開発者には一つの手段には成り得ると思います。

ということで知らない間に驚くほど簡単になってた iAd の紹介でした。

iAd Production Beginner’s Guide

iAd Production Beginner’s Guide