必須となるFrameWork、コンパイルオプションの設定は、通常のAdMob表示時と同様。
https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals?hl=ja#ios
https://developers.google.com/mobile-ads-sdk/docs/admob/intermediate?hl=ja#ios
■SpriteKitを使用している場合のAdMob編集コード
1. Sceneの初期設定を行うinitWithSize:SizeクラスでAdMobを表示するのではなく、SceneがViewに表示されたときに呼ばれる didMoveToView:viewクラスで実施すること。
initWithSize:Sizeクラスで self.viewにGADBannerViewをaddSubviewをしても設定されずNULLとなり、広告は表示されない。
2. GADBannerViewのrootViewControllerには、selfを設定せず、[[[UIApplication sharedApplication] keyWindow] rootViewController] で置き換える。
コード例:
hogeScene.h
#import
#import "GADBannerView.h"
@interface HogeScene : SKScene
{
GADBannerView *bannerView_;
}
@end
hogeScene.m
- (void)didMoveToView:(SKView *)view
{
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
bannerView_.adUnitID = @"YOUR-AdMob-UNIT-ID";
bannerView_.rootViewController = [[[UIApplication sharedApplication] keyWindow] rootViewController];
bannerView_.delegate = self;
[self.view addSubview:bannerView_];
[bannerView_ loadRequest:request];
}
【SpriteKitの最新記事】