Android版でのAdlantisのバナー広告の入れ方はこちら
iPhone版のアプリにAdlantisのバナー広告を入れようとしたときにいくつかやらなきゃいけないことがあったんで、忘れる前にメモしときます。
基本はAdMobとあまりかわらないです。多分。
準備:AdLantis iOS SDK のダウンロード
http://tn.adlantis.jp/adnw/sp/media/iPhoneAppOwner/adlantis-iphone-sdk
ここからまずはAdLantis iOS SDKをダウンロードします。
中身を解凍したら、それを自分がわかる場所にでも置いておきます。
XCode5での設定
次に、それらを参照できるように色々とXCode側で設定します。
やることは以下のとおり。
- Build Settingsでの設定
- サーチパスの追加
- Other Linker Flagの追加
- ライブラリの追加
- adlantis_sdkディレクトリの追加
では、順を追って説明します。
Build Settingsでの設定
1.サーチパスを追加する
左ペインよりプロジェクトを選択し、「TARGET」>「Build Settings」>「Header Search Paths」と「Library Search Paths」を選択します。
作ってるアプリの拙いロゴとか見えちゃってるけど、気にしないでおいてください。
どちらもダブルクリックして、adlantis_sdkのパスを入れましょう。
ちなみに、Header Search Pathsだけでもいいのかも。ただなんか公式のサンプルではLibrary Search Pathsの方に入ってるんですよね。
2.Other Linker Flagに「-ObjC」を追加
次いで、同じ「Build Settings」の「Other Linker Flag」に「-ObjC」と記入します。
Other Linker Flagは「Linking」項目の中にあります。でも検索したら一発ででてきます。
ライブラリの追加
次に、ライブラリの中に以下のものを追加します。
- AdSupport.framework
- CoreTelephony.framework
- SystemConfiguration.framework
- QuartzCore.framework
- libadlantis_ios_sdk.a
一番下のはいらないのかも。
ちなみに、「a」という拡張子はアセンブラらしいです。アセンブラはぜんぜんわからない(´・ω・`)
「General」>「Linked Frameworks and Libraries」の下にある「+」ボタンを押し、検索しながら追加していきましょう。
最後の「libadlantis_ios_sdk.a」はさっき解凍したディレクトリの中に存在し、「Add Other」から探すことができます。
adlantis_sdkディレクトリの追加
最後に、解凍した中に入っている「adlantis_sdk」ディレクトリをそのままプロジェクトの中に追加します。
プロジェクトを選択して「右クリック」>「Add Files to “プロジェクト名”」をクリック
その際、フォルダ作成方法を参照ではない方法にします。なんかその方がいいらしいです。
うまくできると、左側にはこんな感じでフォルダが追加されます。
AppControlelr.hとAppController.mmをいじる
あとはもうコーディングですね。Objective-Cはぜんぜんわからないんですけど、まあなんとかなります。
「ios」フォルダにあるAppController.hとAppController.mmの中に実装していきましょう。
※注意:iosフォルダには「RootViewController」といういかにもルートになりそうな名前のコントローラーがあるんですけど、そっちに書いても反映されないぽいです。
#import <UIKit/UIKit.h> @class RootViewController; @class AdlantisView; @interface AppController : NSObject { UIWindow *window; RootViewController *viewController; AdlantisView *m_adView; } -(CGRect) adViewFrame; @end
続いて、AppController.mmに実装します。
– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions内の下の方に書きましょう。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { /* * (暫く省略) */ cocos2d::CCApplication::sharedApplication()->run(); //ここから m_adView = [[AdlantisView alloc] initWithFrame:[self adViewFrame]]; m_adView.publisherID = @"【Publisher ID】"; //パブリッシャーIDにする m_adView.rootViewController = viewController; m_adView.center = CGPointMake(viewController.view.center.x , viewController.view.frame.size.height - m_adView.frame.size.height / 2); [viewController.view addSubview:m_adView]; //ここまで return YES; } //作成する -(CGRect) adViewFrame{ CGSize suggestedViewSize = AdlantisViewSizeForOrientation(UIApplication.sharedApplication.statusBarOrientation); CGRect adViewFrame; adViewFrame = CGRectMake(0, viewController.view.bounds.size.height - suggestedViewSize.height, suggestedViewSize.width, suggestedViewSize.height); return adViewFrame; }
これでエラーもでずにビルドができれば、きっと彼らは表示されてくれるはずです。