AdSupportFramework カスタム型 v1.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

を設定してください。

それでもJSONKit.mにビルドエラーが出る場合

JSONKit.mを開き、ビルドエラーになっている箇所にマウスのフォーカスを当ててください。

Xcode上に修正すべき内容を補完してくれるので、補完内容の通りに修正してください。

AdSupportFramework SDKの有効化

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

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

<AdSupportFramework/AdController.h>

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

【AppDelegate.h】

#import <AdSupportFramework/AdController.h>

@interface AppDelegate : NSObject <UIApplicationDelegate> {}
@end
【AppDelegate.m】

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

使用する広告の種類に合わせてBOOL(YES / NO)を引数として設定をしてください。 オファーウォール呼び出し型のみを使用される場合は、

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

と記述をしてください。

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

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

広告一覧のデータ取得方法

広告一覧を表示するUIViewControllerのヘッダファイルで

<AdSupportFramework/AdView.h>

<AdSupportFramework/AdController.h>

を読み込み、AdViewDelegateに準拠させます。


【ViewController.h】

#import <AdSupportFramework/AdView.h>
#import <AdSupportFramework/AdController.h>

@interface ViewController : UIViewController <AdViewDelegate>{}


【ViewController.m】

#import "ViewController.h"

@implementation ViewController

//=======================================================
// AdViewDelegate
//=======================================================
- (void)didShowAds{
    //広告表示されたタイミングで呼び出されるdelegateメソッド
    NSLog(@"didShowAds");
}
- (void)didCloseAds{
    //広告が閉じられたタイミングで呼び出されるdelegateメソッド
    NSLog(@"didCloseAds");
}
- (void)didGetAds:(NSArray *)lists {
    //getAdsにて正常にデータがセットされたタイミングで呼び出されるdelegateメソッド
    NSLog(@"didGetAds");
    //(NSArray *)listsに広告一覧データがセットされます
    self.gfAdLists = nil;
    self.gfAdLists = lists;
    [self loadView];
}
- (void)failGetAds {
    NSLog(@"failGetAds");
}

広告を取得したいタイミングでgetAdsメソッドを実行してください。


【ViewController.m】

#import "ViewController.h"

@implementation ViewController

- (void)onClickBtn{
    BOOL status = [AdController getAds:self];
}

※第一引数(上記の例ではself)はAdViewDelegateに準拠したクラスである必要があります。

広告一覧データの情報が取得が完了している場合はYES まだ広告一覧データの取得が完了してない場合にはNOが返却されます。


  • YESの場合

前述のAdViewDelegateメソッドの

didShowAds

が呼ばれ広告一覧データが取得できます。その情報から広告データの描画を行ってください。


  • NOの場合

広告一覧データを取得する通信が非同期で実行されます。通信が完了しますと、上記のYESと同様に

didGetAds

が呼ばれ広告一覧データが取得できます。その情報から広告データの描画を行ってください。


  • 広告一覧データの取得失敗

failGetAds

が呼び出されますので、適宜エラー等の処理を行ってください.

広告一覧データについて

didGetAdsの引数である(NSArray *)listsには個々の広告アプリ情報がNSDictionary型として含まれています。

広告アプリ情報詳細(NSDictionary)
 @"id":ユニークな広告ID
 @"title":アプリタイトル
 @"description":アプリ説明分
 @"entry":詳細記事が存在するかどうか(0:なし 1:あり)
 @"icon":アプリアイコンURL
 @"type":アプリタイプ
 @"app":アプリID
 @"scheme":アプリスキーマ
 @"url":ダウンロードURL

上記の情報から、アプリのテイストに合わせた描画を行うことが可能となります。

広告アプリ情報の詳細画面の表示方法

広告アプリの詳細画面を表示したいタイミングで下記を実行してください。

実行するとモーダルビューが表示されます。

- (void)onClickAppli
{
    [AdController showEntry:self ad:【取得した広告アプリ情報オブジェクト】 delegate:self];
}

※第一引数(上記の例ではself)はUIViewControllerを継承したクラスである必要があります。

※第二引数【取得した広告アプリ情報オブジェクト】didGetAdsにて取得した(NSArray *)lists の内の個々のNSDictionary

※第三引数(上記の例ではself)はAdViewDelegateに準拠したクラスである必要があります。

広告アプリの詳細画面を介さずに直接アプリをインストールさせる場合

インストールさせたいタイミングで下記を実行してください。

実行するとAppStoreが起動いたします。

- (void)onClickInstall
{
    [AdController showDL:self ad:【取得した広告アプリ情報オブジェクト】];
}

※第一引数(上記の例ではself)はUIViewControllerを継承したクラスである必要があります。

※第二引数【取得した広告アプリ情報オブジェクト】didGetAdsにて取得した(NSArray *)lists の内の個々のNSDictionary

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

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

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スキームを設定してください。

個人用ツール
名前空間

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