*

AdMob組み込み覚書

公開日: : 最終更新日:2014/02/28 Tips


書籍ではコレがかなり参考になるのでご紹介。

表題の通りで、組み込みで要注意っぽい部分だけを覚書として記述。
DLと導入については簡単なので割愛。解凍して出てきたソース類をプロジェクトにDrag&Dropで入れればよいだけ。

【必要なframework】
普通にframeworkの追加をしてやる。

・AudioToolbox.framework
・MessageUI.framework
・SystemConfiguration.framework
・CoreGraphics.framework
・AdSupport.framework
・StoreKit.framework

【その他設定】
「Build Settings」→「Linking」→「Other Linker Flags」の項目に
-ObjC
を追加する。

これで動くはず。
日本語はやや古い情報で更新されていないので、 GADBannerViewについての説明ともども、英語サイト側(https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#ios)を参照したほうが良いかもしれない。

【テスト広告】
GADRequest *request = [GADRequest request];
request.testing = YES;
ってやるとtestmodeが有効になってテストモードのAdが出るという話があるんだが、どう見てもマジ広告しか出ない。

request.testDevices = @[GAD_SIMULATOR_ID];
とやってもシミュレータでガチ広告が出る。実機だと
To get test ads on this device, call: request.testDevices = @[ @”xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx” ];
とLogに出るので、そういう設定にしてもガチ広告が出る。

Stackoverflowで見ると、おぼろげに「testingはもう使えない」という話が聞こえる一方で、testDevicesに使ういわゆるUDIDはiOS6からは取得不可になってるっぽいという話も出ている。
つまり、AdMobでは代替に何かのIDを使ってるのだが、はたしてそのIDや如何に…。

とかやっているとこんなページに行き当たる。

Note: Test ads are not supported on iOS 6 devices; use the simulator instead.
iOS6デバイスでテスト広告のサポートはしていない。シミュレータを使え。

この記事は昨年の10月末のもの。次のメジャーバージョンアップデートで対応すると書いてある。
次にリリースノートを見る。
6.4.0(2013/04/08)において
>Test ads are only available on devices running iOS 6+.
>Removed all uses of UDID.
という文言を見つける。
現時点の最新は2014/01/24版の6.8.0なので、UDIDが使えないのは確かだ。
代用は[ASIdentifierManager sharedManager].advertisingIdentifier.UUIDStringのようだが、これを指定しても無理。
英語版のSDKドキュメントでは
>Test ads are supported on both simulator and devices, except for iOS 6 where only the simulator is supported.
なんて書いてあるので、iOS6ではシミュレータのみのサポートなのはどうもたしかっぽい。しかし「iOS7ではどうなる」って書いてないなぁ…
まさか、iOS6系統限定でコード書いてて、iOS7だとやっぱり対応してないってオチじゃないよなぁ。
実機サポートが次の「メジャー」アップデートとか書いてあったし、7.xまで無理なのだろうか。

現状とりあえず困ってない(ほとんどAdに触ってない)ので実害はないが、どうにかスッキリ解決できないのだろうか。
こういうところでストレスと工数を使って「AdMob使えない!」と言わせるのは得策ではないと感じる。

他のBlogからの情報をまとめて覚書。

主に参照したのはこのサイト
http://ohwhsmm7.blog28.fc2.com/blog-entry-327.html

英語の公式ガイドサイト
https://developers.google.com/mobile-ads-sdk/docs/?hl=en#ios

英語公式サイトからSDKのDLをする場合はこちら
https://developers.google.com/mobile-ads-sdk/download#downloadios

関連記事

iPadのUIModalPresentationFormSheetでキーボードが閉じない

iPadでUIModalPresentationFormSheet(全画面ではなく、中央にフロートし

記事を読む

NSStringのフォーマット書式

Appleのページになく、IEEEのprintfフォーマットのページにあるので、C言語と親しくしてな

記事を読む

CoreDataのソートとsectionNameKeyPathの関係

CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam

記事を読む

Size ClassとUIViewController.view

タイトルの件でちょっとハマったことがある上に、特に日本語情報もStackOverflowからも情報が

記事を読む

viewDidLoadとviewDidLayoutSubviewsのタイミング

真実の記事にある「コードでiPhone6を識別する」話とほんのちょっとだけ繋がっている話で、view

記事を読む

iOS8のシミュレーターでLocalizationのテストをする

iOS8.1のシミュレーターでは、従前できていたシミュレーター内での「設定」(Setting)からの

記事を読む

UISplitViewControllerの仕切り線の色を設定

UISplitViewControllerで、iPadを横向き(Landscape)にしたときの2つ

記事を読む

User Defined Runtime Attributeについての覚書

UILabelに上下左右のパディングをつける方法を探して、結局「自分で以下のようなメソッドを持った拡

記事を読む

UIAlertControllerの取り扱い

旧聞ですが日本語版のStackOverflowが始動したようですね。 個人的な印象は「フィルタされ

記事を読む

実機テストしたときのデータを取り出す

Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑