Xcode 5.0.2で、AdMobのiOS版SDK(Version:6.7.0)を入れて実装しようとしているとき、
[[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner]; または [[GADBannerView alloc] initWithFrame:CGRectMake(......)];
↑↑といったような処理でエラーになって落ちました。
大体のエラー内容:
unrecognized selector sent to instance XXXXXX (詳細は省略)
サンプルコードとほぼ同じ実装ですがなぜかうまくいきませんでした。
色々悩んで調べた結果、
問題はソースではなく設定にありました:
TARGETSの
Build Setting → Linking → Other Linker Flags
↑↑の値が空白でした。
サンプルの設定にしたがって「-ObjC」にしたら一瞬で解決しました。
(下記画像を参照してください)
→ 結論、Other Linker Flagsに「-ObjC」か「-all_load」を設定することが必須のようです。
※参考サイト:
iPadな日記 : AdMob 6.1.4 実行時エラー
※Other Linker Flagの設定について
A-Liaison BLOG: -ObjC とか -all_load って何をやってるのか調べてみた
Technical Q&A QA1490: Building Objective-C static libraries with categories