*

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

関連記事

HTMLParserを修正する

HTMLスクレイピングしてる時に役立つライブラリであるObjective-C-HMTL-Parser

記事を読む

UIActionSheetの文字がブレて多重表示される

UIActionsheetを使っていて、iOS7/iPadの組み合わせで起こる不具合らしき挙動が起こ

記事を読む

RealmのListとArrayの相互変換によるマップ

 Realm+ObjectMapperを使って、RealmのオブジェクトをJSON変換してたのですが

記事を読む

Xcode8で余計なログを抑制する

Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐

記事を読む

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

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト)から横向き(ランドスケープ)

記事を読む

App Storeのページにアプリケーションから直接アクセスする方法

去年(2013年)の秋ごろ、iOS7の出始めの時期に書かれたblog記事などを参考にすると、iOS6

記事を読む

iOS7でカメラ撮影時のステータスバーを消す

UIImagePickerControllerをカメラモードで表示するとステータスバーがカメラの一番

記事を読む

UILabelの改行をInterfaceBuilderから入力する

UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou

記事を読む

preferredContentSizeをUINavigationContorllerのPop時に再設定する

popoverで表示しているViewControllerのサイズを、他のViewController

記事を読む

UITableViewのヘッダに小文字を入れる

UITableViewのセクションヘッダをStoryboardでカスタマイズするという話題を以前掲載

記事を読む

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

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

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

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

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

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

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

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

NXDrawKitを導入してみる

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

→もっと見る

    PAGE TOP ↑