2011年11月8日火曜日

AdWhirlのCustom Eventを使う

Custom Car June 2011 by NickGrant.co.uk
Custom Car June 2011, a photo by NickGrant.co.uk on Flickr.
AdWhirl で標準対応していない広告サービスを使うには、Custom Event という仕組みを使います。
使い方について需要がありそうなので、書いてみます。

実はめちゃくちゃ簡単です。
ただし、AdMaker なら AdMaker SDK を、AdLantis なら AdLantis SDK を単独で組み込んで使用できるスキルは必要です。(笑)

AdWhirl の管理画面で、Custom Event を登録します。
Apps の Ad Network Settings で、Add Custom Event というボタンを押します。

Figure 1

そこで、追加する広告サービス名と任意のイベント関数名を入力します。
Figure 2 では、サービス名を AdLantis に、イベント関数名を performEventAdLantis にしました。どちらも、お好きな名前で構いません。
Figure 2
Ad Serving スイッチを ON にして、% of Traffic に表示比率を入力します。全体の合計が100%になるようにしましょう。テストする場合は、1つの広告サービスのみ ON にして、100%を割り当てるのが良いです。

Xcode プロジェクト側では既に、AdWhirl SDK と AdLantis SDK が組み込まれていることとします。それぞれ、以下のページを見て組み込めば良いでしょう。

最初に AdWhirl と AdLantis をインスタンス化します。
// AdLantis
AdlantisAdManager.sharedManager.publisherID = @"XXXXXXXXXX";  // 割り当てられた AdLantis パブリッシャーID
AdlantisAdManager.sharedManager.adFetchInterval = 30; // 広告の読み直し時間(秒)
// IBで設置したAdlantisViewをインスタンス化(この方法が一番楽)
adlantisViewController = [[AdlantisViewController alloc] initWithNibName:@"AdlantisViewController" bundle:nil];

// AdWhirl
adView = [AdWhirlView requestAdWhirlViewWithDelegate:self];  // AdWhirlDelegate を割り当てたオブジェクトを指定
[adView setFrame:CGRectMake(80,270,320,50)];  // 配置場所とサイズ
[self.view addSubview:adView];
AdWhirlDelegate メソッドは以下のようになるでしょう。詳しくはドキュメントをご覧ください。
- (NSString*)adWhirlApplicationKey
{
 return @"xxxxxxxxxxxxxxxxxxxxxxxxxxx";  // 割り当てられた AdWhirl アプリケーションKey
}

- (UIViewController*)viewControllerForPresentingModalView
{
 return UIWindow.rootViewController;
}

// AdLantis 広告表示イベント
- (void)performEventAdLantis:(AdWhirlView*)adWhirlView
{
 if (adlantisViewController) {
  [adWhirlView replaceBannerViewWith:adlantisViewController.view];
 }
}
ここで管理画面で設定したイベント関数名が登場します。
AdWhirl で AdLantis の広告表示タイミングが来たら、この関数が呼ばれます。
ここで先にインスタンス化しておいた、AdlantisView を渡してやれば表示完了です。

ちなみにこの performEventAdLantis 関数が無くても、実行時にクラッシュすることはありません。オブジェクトがメッセージを受け取れないだけで、何も起こりません。(ログが出力されます)
今回は AdLantis SDK を例にしましたが、AdMaker の場合も基本的には同じです。

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...