BLOG

2014年5月8日/ AdMob, iOS, アプリ

[iOS][AdMob] アプリにバナー広告を表示する方法(その2)

 

以前、iOS標準のiAdフレームワークを使ったバナー広告の表示について記載しました。

[iOS][iAd] アプリにバナー広告を表示する方法(その1)

 

今回はGoogleが提供するアドネットワークAdMobの実装について紹介します。

ちなみにAdMobはApp Storeへのアプリリリース後しか実装できませんので注意して下さい。

※ この記事での最新バージョンは「iOS:7.1.1」「AdMob:6.8.0」です。

 

 

なぜAdMobを実装するのか?

iAdの実装方法を紹介したのでAdMobの実装について、一見必要性が無いように思われるかもしれません。

しかし、日本国内においてはiAdの広告が少ない上に、一度表示した広告が表示されない仕組みとなっているため1つの広告ユニットでは無く複数の広告ユニットを同時に利用して表示できるものを選択する方法をオススメします。

 

iAdを先に実装する

AdMobはApp Storeへのアプリリリース後のみ実装が可能となる仕組みであることも関係していますが、iAdによる広告表示は初回のアプリローンチ時点で実装しておくことをオススメします。

理由はローンチ当初から広告が表示されているケースと、バージョンアップで急に広告が表示されるケースとでは、ユーザーの印象が異なるからです。

アプリに広告を表示するつもりであれば、最初からiAdによるバナー広告を表示しておいて次回のアップデートでAdMobを実装し、iAdが表示できない時にAdMobを表示するような排他的な仕組みで実装します。

 

AdMobの登録

AdMobによる広告バナーの実装の前に、AdMobアカウントを作成しておく必要があります。

以下のリンクから登録およびアプリを設定して下さい。

AdMobサイト

 

アプリを設定するとSDKがダウンロードできるようになります。

 

AdMobSDKのインストール

SDKをダウンロードしzipファイルを解凍します。

解凍フォルダの中から下記ファイルのみをxCodeにインポートします。

  • GADAdMobExtras.h
  • GADAdNetworkExtras.h
  • GADAdSize.h
  • GADBannerView.h
  • GADBannerViewDelegate.h
  • GADInterstitial.h
  • GADInterstitialDelegate.h
  • GADRequest.h
  • GADRequestError.h
  • libGoogleAdMobAds.a

 

次に下記フレームワークをインストールして下さい。

  • AdSupport
  • AudioToolbox
  • AVFoundation
  • CoreGraphics
  • MessageUI
  • StoreKit
  • SystemConfiguration
  • CoreTelephony

 

次にターゲットの”Build Settings” -> “Other Linker Flags”に「-ObjC」を設定します。

 

これでインストールが完了しました。

次よりアプリにバナーを実装していきます。

 

GADBannerViewの実装

AdMobのバナー広告はUIViewを継承したGADBannerViewを利用します。

iAdを実装したことがあれば、使い方はほぼ同じなのですぐに理解できると思います。

 

まずはヘッドのインポートとデリゲートの設定を行います。

 

続いてViewの実装です。

ディスプレイの下部に表示するバナーとしました。

ADMOB_BNNER_UNIT_IDはAdMobの広告ユニットで設定されるIDです。AdMobで作成した広告ユニットの詳細画面に表示されているのでコピーして設定して下さい。

 

iAdはオブジェクト生成と同時に広告をロードしますが、AdMobは明示的に広告をロードする必要があります。

 

– (void)adViewDidReceiveAd:(GADBannerView *)bannerメソッドは広告がロード完了した時に呼ばれます。

– (void)adView:(GADBannerView *)banner didFailToReceiveAdWithError:(GADRequestError *)errorメソッドはなんらかの原因で広告が表示できなくなった場合に呼ばれます。

 

今回はiAdが非表示の時に表示する排他的な仕組みとして実装するため、AdMobの広告ロードをiAdの非表示メソッドが呼ばれた時に実装しました。

 

 

 おわりに

いかがでしたでしょうか?

iAdと同じくAdMobも基本的な実装方法は同じです。

 

AdMobが広告クリックと同時に別アプリが起動してしまうのが難点ですが、広告が多くiAdが表示できない時に有効なアドネットワークです。

是非実装して収益化をめざして下さい!

 

 

Resent Posts

Category