連携
プラグインは、AppsFlyerObject prefabを使用、または手動で初期化できます。
- AppsFlyerObject.prefab の使用
- マニュアル連携
- ATTrackingManagerで IDFAを収集する
- SKANポストバックをAppsFlyerに送信する
- macOSの初期化
- リクエストリスナー(オプション)
AppsFlyerObject.prefab の使用
- Assets > AppsFlyer に移動し、AppFlyerObject.prefab をシーンにドラッグします。
- 次の項目を更新します:
設定項目 | 詳細 |
---|---|
Dev Key | AppsFlyerのDev Key - AppsFlyer管理画面から取得できます |
アプリID | iTunesアプリID (アプリが iOS用でない場合は、項目を空のままにします) |
Get Conversion Data | ディープリンクにAppsFlyerを使用している場合は、これをtrueに設定します。 |
Is Debug | デバッグログを表示するには、true に設定します。(開発用) |
- 他の利用可能なAPIと一緒に、Assets > AppsFlyerObjectScript.cs でコードをアップデートします。
マニュアル連携
ゲームオブジェクトを作成し、以下のinitコードを追加してください:
using AppsFlyerSDK;
public class AppsFlyerObjectScript : MonoBehaviour
{
void Start()
{
AppsFlyer.initSDK("devkey", "appID");
AppsFlyer.startSDK();
}
}
注意:
- ゲームオブジェクトでdestroyを呼び出さないようにしてください。
- Use
DontDestroyOnLoad
を使用して、新しいシーンをロードするときにオブジェクトを保持します。
ATTrackingManagerで IDFAを収集する
-
Add the
AppTrackingTransparency
フレームワークをXcodeプロジェクトに追加します。 -
In the
Info.plist
:- リストにエントリを追加:以下リストの横にある + をクリックします
Information Property List
. - スクロールダウンして次を選択します:
Privacy - Tracking Usage Description
. - IDFAを収集する許可を求める際にユーザーに提示したい文言を値として追加します。
- リストにエントリを追加:以下リストの横にある + をクリックします
-
API
waitForATTUserAuthorizationWithTimeoutInterval
を次のメソッドの前にコールします:startSDK()
#if UNITY_IOS && !UNITY_EDITOR AppsFlyer.waitForATTUserAuthorizationWithTimeoutInterval(60); #endif
-
プロンプト(ATTダイアログ)を表示する追跡承認をリクエストします。
次のパッケージ、または追跡承認をリクエストできるその他のパッケージを使用できます。using Unity.Advertisement.IosSupport; /* ... */ if (ATTrackingStatusBinding.GetAuthorizationTrackingStatus() == ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED) { ATTrackingStatusBinding.RequestAuthorizationTracking(); } /* ... */
SKANポストバックをAppsFlyerに送信する
AppsFlyerエンドポイントを登録するには、info.plist に NSAdvertisingAttributionReportEndpoint
を追加し、値を https://appsflyer-skadnetwork.com/
と設定します。
info.plist を更新する方法の詳細については、 こちらを参照してください。
macOSの初期化
- 次を使用してください:prefab
AppsFlyerObject
- MacOS app idを追加します。
- プラットフォーム
PC, Mac & Linux Standelone
向けにビルドし、ターゲットプラットフォームとしてMacOS
を選択します。
リクエストリスナー(オプション)
- ゲームオブジェクトへ AppsFlyer初期化コードと一緒に 'AppsFlyer.cs' スクリプトを添付します。(AppsFlyerObject, ect)
- startSDK() の前に 次のコードを追加します。
セッションレスポンスの例:
void Start()
{
AppsFlyer.OnRequestResponse += AppsFlyerOnRequestResponse;
AppsFlyer.initSDK(devKey, appID, this);
AppsFlyer.startSDK();
}
void AppsFlyerOnRequestResponse(object sender, EventArgs e)
{
var args = e as AppsFlyerRequestEventArgs;
AppsFlyer.AFLog("AppsFlyerOnRequestResponse", " status code " + args.statusCode);
}
アプリ内イベントレスポンスの例:
void Start()
{
AppsFlyer.OnInAppResponse += (sender, args) =>
{
var af_args = args as AppsFlyerRequestEventArgs;
AppsFlyer.AFLog("AppsFlyerOnRequestResponse", " status code " + af_args.statusCode);
};
AppsFlyer.initSDK(devKey, appID, this);
AppsFlyer.startSDK();
}
statusCode | errorDescription |
---|---|
200 | null |
10 | "Event timeout. Check 'minTimeBetweenSessions' param" |
11 | "Skipping event because 'isStopTracking' enabled" |
40 | ネットワークエラー:Android経由のエラーの説明 |
41 | "No dev key" |
50 | "Status code failure" + サーバーからの実際のエラーコード |
更新済 3か月前