iOS URL置換

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

UIWebViewを用いたアプリにおいて、iOSアプリのAppStoreリンクを、GAMEFEATの広告として紹介することができます。広告への置き換えは、自動的に行われます。

コンバージョン確認タスクの起動の実装は必須です

目次

フレームワークの追加

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

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

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

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

・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上に修正すべき内容を補完してくれるので、補完内容の通りに修正してください。

リソースファイルの追加

同梱されているgamefeatフォルダを、プロジェクトのリソースに追加します。

GameFeat SDKの有効化

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

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

<GameFeatKit/GFController.h>

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

【AppDelegate.h】

#import <GameFeatKit/GFController.h>

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

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

使用する広告の種類に合わせてBOOL(YES / NO)を引数として設定をしてください。 URL置換を使用するには

[GFController activateGF:@"メディアID" useCustom:YES useIcon:NO];

と記述をしてください。

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

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

URL置換方法

UIWebViewを実装しているクラスファイルに、webViewのshouldStartLoadWithRequestメソッドを下記のように定義してください。

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request 
  navigationType:(UIWebViewNavigationType)navigationType
{
    if (navigationType == UIWebViewNavigationTypeLinkClicked) {
        // GF広告対象かどうか判定をし、あれば自動的にURLを置き換える
        return [GFController openStoreUrl:request];
    }
    return YES;
}

自動URL置換対象

AppStoreアプリへの導線が対象になります。URLは下記のように完全に一致していなくても、実際にAppStoreに遷移できれば自動的に置き換わります。

<a href="https://itunes.apple.com/jp/app/idアプリID">アプリ</a>

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

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

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

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

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

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

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

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

コンバージョン確認方法

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

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

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

iOS6.0以上の端末の場合

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

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

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

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

個人用ツール
名前空間

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