AdSupportFramework for Cocos2d-x ver1.0アイコン型

提供: GAMEFEAT マニュアル
移動: 案内検索

GameFeatSDKの実装マニュアルについては、こちらを参照してください。

目次

フレームワークの追加

付属の「AdSupportFramework.framework」を任意の場所にコピーします。

プロジェクトを開き、「Frameworks」を選択し、「Add Files to "プロジェクト名"」を選択します。

ダイアログからAdSupportFramework.frameworkを選択し、フレームワークを追加します。

同様にAdSupportFrameworkに必要な、以下のフレームワークをプロジェクトに追加します。

・Foundation.framework
・UIKit.framework
・CoreTelephony.framework
・AdSupport.framework(Optional)
・StoreKit.framework(Optional)

JSONKitの追加

また同梱されている下記JSONKitライブラリをプロジェクトに追加します。

JSONKit

プロジェクトが ARC アプリである場合

※JSONKitがARCに対応していないためにビルド時にエラーが発生します。

その場合には、JSONKit.mに-fno-objc-arcフラグを付ける必要があります。


プロジェクト設定からBuildPhasesタブを選択し、CompileSources中に存在するJSONKit.mを選択して、Compiler Flagsに

-fno-objc-arc

を設定してください。

AdSupportFramework SDKの有効化

起動時にAdSupportFramework SDKを有効化する必要があります。

UIApplicationDelegateを継承したクラスのヘッダファイルで

  1. import <AdSupportFramework/AdController.h>

を読み込み、applicationDidBecomeActiveに下記メソッドを追加します。

【AppController.h】

#import <UIKit/UIKit.h>
#import "RootViewController.h"
#import <AdSupportFramework/AdController.h>

@interface AppController : NSObject <UIApplicationDelegate> {
    UIWindow *window;
}

@property(nonatomic, readonly) RootViewController* viewController;

@end

【AppController.mm】

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [AdController activate:@"メディアID" useCustom:YES useIcon:YES];
}
// 初期化コードの引数
[AdController activate:@"メディアID" useCustom:カスタム広告の使用 useIcon:アイコン広告の使用];

使用する広告の種類に合わせてBOOL(YES / NO)を引数として設定をしてください。 アイコン型のみを使用される場合は、

[AdController activate:@"メディアID" useCustom:NO useIcon:YES];

と記述をしてください。

※【メディアID】は管理画面よりご確認いただけます。

※エラーが発生せずにビルドが完了すれば、 正常にSDKが追加できています。

アイコンの表示方法

※ AndroidはNativeBridge.cpp iOSはNativeBridge.mmとして作成していただき、ヘッダーファイルは一つのみ作成してください。

C++からObjective-Cを呼び出す為にNativeBridgeファイルを作成し、

AppControllerのメソッドを呼ぶshowIconメソッドを作成します。

【NativeBridge.h】

#ifndef _NATIVE_BRIDGE_H_
#define _NATIVE_BRIDGE_H_

class NativeBridge
{
public:
  //アイコン型
  static void showIcon();
};

#endif 
【NativeBridge.mm】

#import "NativeBridge.h"
#include "AppController.h"

/**
 * アイコン型表示
 */
void NativeBridge::showIcon()
{
    AppController *appController = (AppController*)[[UIApplication sharedApplication] delegate];
    [appController showIcon];
}

次にAppControllerのヘッダファイルで

<AdSupportFramework/AdIcController.h>

<AdSupportFramework/AdIcView.h>

を読み込んで、showIconメソッドを作成します。

広告を表示したい場所に AdIcView を配置して下さい。


【AppController.h】

#import <UIKit/UIKit.h>
#import "RootViewController.h"
#import <AdSupportFramework/AdIcController.h>
#import <AdSupportFramework/AdIcView.h>

@interface AppController : NSObject <UIApplicationDelegate> {
  UIWindow *window;
  AdIcController *gfIconController;
}

@property(nonatomic, readonly) RootViewController* viewController;

//アイコン型
- (void)addIcon;
- (void)showIcon;
- (void)hideIcon;


@end
【AppController.mm】

/**
 * アイコン型追加
 */
- (void)addIcon {
    
    // AdIcControllerの初期化
    self.gfIconController = [[AdIcController alloc] init];
    
    // アイコンの自動更新間隔を指定
    [self.gfIconController setRefreshTiming:10];
    
    // アイコンの配置位置を設定
    {
        AdIcView *iconView = [[[AdIcView alloc] initWithFrame:CGRectMake(10, 10, 60, 60)] autorelease];
        [self.gfIconController addIconView:iconView];
        [viewController.view addSubview:iconView];
    }
    {
        AdIcView *iconView = [[[AdIcView alloc] initWithFrame:CGRectMake(80, 10, 60, 60)] autorelease];
        [self.gfIconController addIconView:iconView];
        [viewController.view addSubview:iconView];
    }
    
    [self.gfIconController loadAd:GF_SITE_ID];
}

/**
 * アイコン型表示
 */
- (void)showIcon {
    if ([self.gfIconController.arrIconView count] == 0) {
        [self addIcon];
    } else if (self.gfIconController.isTimerActive == NO) {
        [self.gfIconController loadAd:GF_SITE_ID];
    }
    [self.gfIconController visibleIconAd];
}

/**
 * アイコン型非表示
 */
- (void)hideIcon {
    [self.gfIconController stopAd];
    [self.gfIconController invisibleIconAd];
}

※第二引数の【メディアID】は管理画面よりご確認いただけます。

広告を表示したいタイミングで

NativeBridge.h

を読み込み、addIconメソッドを実行してください。

【MainScene.cpp】

#include "MainScene.h"
#include "NativeBridge.h"

void MainScene::onClickBtn()
{
  NativeBridge::showIcon();
}

コンバージョン確認タスクの起動

アプリがバックグラウンドへ遷移した際に、アプリインストールのコンバージョンを確認するタスクを起動する必要があります。

UIApplicationDelegateを継承したクラスのapplicationDidEnterBackgroundに下記メソッドを追加します。

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    UIDevice *device = [UIDevice currentDevice];
    BOOL backgroundSupported = NO;
    if ([device respondsToSelector:@selector(isMultitaskingSupported)]) {
        backgroundSupported = device.multitaskingSupported;
    }
    if (backgroundSupported) {
        [AdController backgroundTask];
    }
}

コンバージョン確認タスクの停止

アプリがバックグラウンドから起動した際には、アプリインストールのコンバージョンを確認するタスクを停止する必要があります。

UIApplicationDelegateを継承したクラスのapplicationWillEnterForegroundに下記メソッドを追加します。

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [AdController conversionCheckStop];
}

コンバージョン確認方法

AdSupportFramework SDKの広告一覧画面よりアプリを選択するとApp Storeが起動いたしますので、対象のアプリをインストールしてください。

インストール完了後、AdSupportFramework SDKがインストール情報を弊社サーバーへ送信いたしますので、管理画面より成果をご確認いただけます。

※管理画面の反映には10分程度かかります。

iOS6.0以上の端末の場合

開発中アプリからiOS6.0以上の端末で成果を確認する場合、AdSupportFrameworkからアプリをインストールできません。(リリース後、正常に動作いたします)

AdSupportFrameworkではStoreKitを使用してApp Storeを表示しており、Appleの仕様上StoreKitを利用したアプリのインストールはデバック環境やアドホック環境では行うことができません。

その場合、成果の確認方法は広告一覧画面よりアプリを選択後、手動でApp Storeアプリを起動し、

対象のアプリをインストールしていただくことで成果の確認を行うことができます。 

URLスキームの設定

相互送客機能を使用するために、アプリに任意のURLスキームを設定してください。

サンプルプロジェクト

AdSupportFrameWork SDKのサンプルプロジェクトを用意いたしました。

SDKを管理画面からダウンロードしていただき、サンプルプロジェクトに含めてください。

また、STAppDelegate.h内の

#define GAME_MEDIA_ID @"メディアID"

こちらを適宜変更の上、動作のご確認をよろしくお願いいたします。

AdSupportFrameWork_Cocos2D-X_Sample_Ver1
GAMEFEAT_cocos2dx ver3.x.x sample
GAMEFEAT_cocos2dx ver2.x.x sample
GAMEFEAT_cocos2d sample

個人用ツール
名前空間

変種
操作
Androidへの導入
iOSへの導入 (新SDK)
iOSへの導入 (旧 GAMEFEAT SDK)
Unityへの導入方法
Cocos2dx(Android)への導入方法
Cocos2dx(iOS)への導入方法
Q&A
ツールボックス