AppsFlyer

AppsFlyer は、モバイル広告に関する宣伝効果の測定 ( アトリビューション ) および収集したデータの分析 ( アナリティクス ) において、業界における標準のツールになりつつあります。AppsFlyer が提供する正確な測定・分析結果に基づき、広告の提供元は、広告のターゲットの絞り込み、投資額の見直しなどを行え、よって、投資対効果 ( ROI ) を最適化できます。

AppsFlyer を使用すれば、アプリのインストール状況、ダウンロード状況、コンバージョン情報 ( conversion/目的達成の成否 ) などを監視・追跡できます。また、AppsFlyer 提供の API を使用すれば、他のアプリ/プラットフォームと連携することができます。

事前準備

AppsFlyer を使用した監視・追跡を行う前に、次の情報が必要となります。

  1. devKey: AppsFlyer 提供の devKey です。
  2. appId: ( iOS の場合 ) App Store で使用する App ID です。

Monaca プロジェクトに AppsFlyer を追加する方法

  1. Monaca クラウド IDE から、 設定 → 外部サービス連携 を選択します。

  2. AppsFlyer サービスの 詳細を見る ボタンをクリックします。

  3. インストール ボタンをクリックします。

  4. インストールを継続するか確認する画面が表示されます。 OK をクリックして、インストールを開始します。

設定

次の記述を追加します。devKey ( および appID ) を渡して、監視・追跡処理を初期化します。

document.addEventListener("deviceready", function(){

    var options = {
        devKey:  'xxXXXXXxXxXXXXxXXxxxx8'  // your AppsFlyer devKey
    };

    var userAgent = window.navigator.userAgent.toLowerCase();

    if (/iphone|ipad|ipod/.test(userAgent)) {
        options.appId = "123456789";       // your ios app id in app store
    }

    window.plugins.appsFlyer.initSdk(options);

}, false);

使い方

SDK の初期化

SDK を初期化します。

initSdk(options, onSuccess, onError): void

パラメーター

名前 解説
options オブジェクト SDK の設定を行います ( 設定値に関しては、下の 「 オプション 」 表をご確認ください )。
onSuccess (message: 文字列) => void 成功時のコールバック : SDK の初期化が成功したときに呼ばれます ( 任意 )。
onError (message: 文字列) => void 失敗時のコールバック : SDK の初期化時に、エラーが発生した場合に呼ばれます ( 任意 )。

options オブジェクト

名前 デフォルト値 解説
devKey 文字列 Dev key の解説 ( AppsFlyer のサイト )
appId 文字列 ( iOS のみ ) App Store で使用する App ID です。
isDebug 真偽値 false デバッグモード ( 任意 )
onInstallConversionDataListener 真偽値 false アトリビューション/コンバージョン データに、SDK 経由でアクセスします ( ディファード ディープリンク/Deferred DeepLinking )。AppsFlyer プラグインでは、アトリビューション データを、onSuccess コールバックに返します。詳細は、次のリンク先をご確認ください。

initSdk() 関数の使用例を、次に記します。

var onSuccess = function(result) {
    //handle result
};

function onError(err) {
    // handle error
}

var options = {
    devKey:  'd3Ac9qPardVYZxfWmCspwL',
    appId: '123456789',
    isDebug: false,
    onInstallConversionDataListener: true
};

window.plugins.appsFlyer.initSdk(options, onSuccess, onError);

アプリ内イベントトラッキング API

trackEvent メソッドを使用して、AppsFlyer の分析メカニズム ( AppsFlyer analytics ) 側に、アプリ内イベントの収集データを渡します。また、このメソッドを使用すれば、監視対象のイベントを、コードに直接追加して、動的に追加できるようになります。アプリ内イベントを使用すると、ユーザーの動向を分析できます。また、各種キャンペーンおよびメディアソースへの関連付けもできます ( ユーザーの操作と、そのきっかけとなったキャンペーンなどを対応付けできます )。ROI ( 投資対効果 ) と LTV ( 顧客生涯価値 ) の計算に必要となる、データ収集対象のイベントに関しては、慎重に選択する必要があります。

trackEvent(eventName, eventValues): void (optional)

パラメーター

名前 解説
eventName 文字列 イベント名 ( カスタム可能 )。ダッシュボード上に表示されます。
eventValue オブジェクト イベントの詳細

trackEvent() 関数の使用例を、次に記します。

var eventName = "af_add_to_cart";

var eventValues = {
    "af_content_id": "id123",
    "af_currency":"USD",
    "af_revenue": "2"
};

window.plugins.appsFlyer.trackEvent(eventName, eventValues);

通貨コードの設定

通貨コードを変更できます。

setCurrencyCode(currencyId): void

パラメーター

名前 デフォルト値 解説
currencyId 文字列 USD 使用できる通貨コードに関しては、こちら ( ISO 4217 ) をご確認ください。

setCurrencyCode() 関数の使用例を、次に記します。

window.plugins.appsFlyer.setCurrencyCode("USD");
window.plugins.appsFlyer.setCurrencyCode("GBP"); // British Pound

カスタマーユーザー ID の設定 ( 詳細 )

カスタム ID をセットします。AppsFlyer 提供の ID 群 ( 端末 ID、ユーザー ID など ) と、このカスタム ID を紐づけすれば、各種情報を、カスタム ID 下に集約できるようになります。このカスタム ID ( AppsFlyer 側とユーザー側で使用している ID の紐づけに使用 ) は、AppsFlyer が提供する CSV レポートを出力時、および、PostBack 系の API の使用時にも使用できます。

この ID の設定は、アプリを初めて起動するときに行う必要があります ( SDK の初期化時 )。実装方法としては、deviceready イベントの処理時に、この API を呼び出すことを推奨します。
setAppUserId(customerUserId): void

パラメーター

名前 解説
customerUserId 文字列 独自のカスタム ID

setAppUserId() 関数の使用例を、次に記します。

window.plugins.appsFlyer.setAppUserId(userId);

GCM プロジェクト番号の設定

GCM のプロジェクト番号をセットします。この番号を使用して、アプリのアンインストールを監視・追跡します ( Android プラットフォーム向け )。

setGCMProjectID(GCMProjectNumber): void

パラメーター

名前 解説
GCMProjectNumber 文字列 GCM のプロジェクト番号。Google Developer Console 上で確認できます。詳細は、アンインストール計測 ページをご確認ください。

トラッキングのアンインストール

アプリのアンインストールを監視・追跡するため、iOS のデバイストークンをセットします ( iOS プラットフォーム向け )。

registerUninstall(token): void

パラメーター

名前 解説
token 文字列 iOS のデバイストークン。 UnityEngine.iOS.NotificationServices.deviceToken を使用すれば、デバイストークンを取得できます。詳細は、Unity の解説、および、iOS アンインストールの計測 をご確認ください。

AppsFlyer のデバイスIDを取得する

この API を使用すれば、AppsFlyer 側で独自に割り振っている端末 ID を取得できます。この端末 ID は、各種レポートの出力時、および、各種 API で使用されます。

getAppsFlyerUID(getUserIdCallbackFn): void

パラメーター

名前 解説
getUserIdCallbackFn () => void 成功時のコールバック

getAppsFlyerUID() 関数の使用例を、次に記します。

var getUserIdCallbackFn = function(id) {
    alert('received id is: ' + id);
}
window.plugins.appsFlyer.getAppsFlyerUID(getUserIdCallbackFn);

ディープリンク トラッキング

AppsFlyer のアトリビューション データを使用して、ディープリンクを追跡します。

Android バージョン 4.2.5 以降では、ディープリンク関連のメタデータ ( scheme、host ) は 、自動的に送付されます。
handleOpenUrl(url): void

パラメーター

名前 解説
url 文字列 Url

The following snippet shows how to use handleOpenurl() function:

var handleOpenURL = function(url) {
    window.plugins.appsFlyer.handleOpenUrl(url);
}