cocos2dx 3.1.1のiosにAdMobを入れた時に表示されない。(Must set the rootViewController property of GADBannerView before calling loadRequest エラー)
http://stackoverflow.com/questions/21846346/admob-with-cocos-2d-v3/21859218#21859218?newreg=3f939ceefd2e4dde88d6c3cf3c1c7f39
上記のサイトの回答のリンク先からダウンロードできるサンプルプロジェクトを見て解決しました。
AdMobをcocos2dxに追加するのは、公式ドキュメントといつもお世話になっているLady WendyさんのCocos2d-x:AdMobを表示させる(iOS)を見て大体わかったのですが、
Must set the rootViewController property of GADBannerView before calling loadRequest
というエラーが出て、広告が表示されませんでした。
公式ドキュメントの通りに
とすると、selfのところでエラーが出てしまいます。
結論としては、これを
コードも載せておきます、関係有るところだけ。
上記のサイトの回答のリンク先からダウンロードできるサンプルプロジェクトを見て解決しました。
AdMobをcocos2dxに追加するのは、公式ドキュメントといつもお世話になっているLady WendyさんのCocos2d-x:AdMobを表示させる(iOS)を見て大体わかったのですが、
Must set the rootViewController property of GADBannerView before calling loadRequest
というエラーが出て、広告が表示されませんでした。
公式ドキュメントの通りに
bannerView_.rootViewController = self; [self.view addSubview:bannerView_];
とすると、selfのところでエラーが出てしまいます。
結論としては、これを
bannerView_.rootViewController = self.viewController; [self.viewController.view addSubview:bannerView_];としたら解決しました。
コードも載せておきます、関係有るところだけ。
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner]; bannerView_.adUnitID = @"ca-app-pub-xxxxxxxxxxxx"; [viewController.view addSubview: bannerView_]; bannerView_.rootViewController = self.viewController; [self.viewController.view addSubview:bannerView_]; GADRequest *request = [GADRequest request]; request.testDevices = [NSArray arrayWithObjects: @"シミュレータのID", nil]; [bannerView_ loadRequest:[GADRequest request]]; cocos2d::Application::getInstance()->run(); return YES;
コメント
ご紹介ありがとうございました。
う〜ん、ほんとだ。動かなくなってますね。。。。(- -;)
教えてくれてありがとうございます。
私のサイトも追って修正入れさせて頂きます。
こちらのページ、ご紹介させて頂きますね!(^^)