APIリファレンス

このプラグインで使用可能なメソッドのリストを以下に説明します。


Android, iOS & Windows向けのAPI

initSDK

void initSDK(string devKey, string appID, MonoBehaviour gameObject)

AppsFlyer SDKをDevキーとアプリIDで初期化してください。Devキーは全てのアプリで必要ですが、アプリIDはiOSのみで必要です。アプリがAndroidのみである場合には、appIDはnullで渡してください。

parametertypedescription
dev_keystringAppsFlyerのDevキーは、AppsFlyer管理画面 左メニュー > アプリ設定 画面から取得できます。
app_idstringアプリのApple ID
gameObject (オプション)MonoBehaviourゲームオブジェクトには、IAppsFlyerConversionData interfaceが含まれています。


例:

AppsFlyer.initSDK("dev_key", "app_id"); // without deeplinking
AppsFlyer.initSDK("dev_key", "app_id", this); // with deeplinking

注意:ディープリンクを使用してSDKを実装する必要があるのは、 IAppsFlyerConversionData interface です。


startSDK

void startSDK()

このAPIが呼び出されると、SDKが起動され、セッションがすぐに送信され、すべてのバックグラウンドからフォアグラウンドへの遷移においてセッションが記録されます。


例:

 AppsFlyer.startSDK();

Android / iOS向けのAPI

stopSDK

void stopSDK(bool isSDKStopped)

稀ではあっても場合によっては、法律やプライバシー遵守のために、すべてのSDKにおける計測を停止しなければならないケースがあります。その場合、stopSDK APIを利用可能です。このAPIが呼び出されると、SDKはサーバーとの通信を停止し、機能しなくなります。

ユーザーのオプトアウトには、さまざまなシナリオがあります。AppsFlyerでは、アプリに適したシナリオにあわせて正しい手順を守り、実装するよう推奨します。

なお、同じAPIにてfalseを渡して呼び出すことにより、SDKを再アクティブ化することができます。

重要:
stopSDK() が true に設定されている場合は、startSDK() を呼び出さないでください。

SDKファンクションを再起動するには、次のAPIを使用します:

AppsFlyer.stopSDK(false);

警告
stopSDK API は、ユーザーのSDKファンクションを完全に無視する場合にのみ使用してください。このAPIの使用は、アトリビューションやデータ収集、ディープリンクの機能に影響を与えますのでご注意ください。

parametertypedescription
isSDKStoppedboolSDKが停止している場合:true(デフォルト値: false)


例:

AppsFlyer.stopSDK(true);

isSDKStopped

bool isSDKStopped()

stopSDK (boolean) APIが次のように設定されていたかどうか: true.


例:

if (!AppsFlyer.isSDKStopped())
{
  
}

getSdkVersion

string getSdkVersion()

アプリで使用されているAppsFlyer SDKのバージョンを取得します。


例:

string version = AppsFlyer.getSdkVersion();

setIsDebug

void setIsDebug(bool shouldEnable)

AppsFlyer SDKのデバッグログを有効にします。

警告
開発 / デバッグ環境でのみ true に設定します。

parametertypedescription
shouldEnableboolデバッグモードがオンの場合:true(デフォルト値:false)


例:

AppsFlyer.setIsDebug(true);

addPushNotificationDeepLinkPath

void addPushNotificationDeepLinkPath(params string[] paths)

キーの配列を追加します。これは、プッシュ通知のペイロードからディープリンクを解決するためのキーパスを構成するために使用されます。

parametertypedescription
pathsstring[]array of strings that represent the key path to the deeplink in the push notification payload


例:

使用例:
一般的な設定:

AppsFlyer.addPushNotificationDeepLinkPath("af_push_link")

この呼び出しは、以下のペイロードの構造と一致します:

{
  "af_push_link": "https://yourdeeplink2.onelink.me"
}

ֿAdvanced configuration:

string[] paths = {"deeply", "nested", "deep_link"};
AppsFlyer.addPushNotificationDeepLinkPath(paths);

この呼び出しは、以下のペイロードの構造と一致します:

{
  "deeply": {
      "nested": {
          "deep_link": "https://yourdeeplink2.onelink.me"
      }
  }
}

setCustomerUserId

void setCustomerUserId(string id)

独自のCustom IDを設定することで、独自のユニークIDとAppsFlyerのユーザーIDおよびその他のデバイスIDを相互照会できるようになります。このIDは、ポストバックAPIとともにAppsFlyerのCSVレポートで確認でき、御社内部のIDと相互参照することができます。

parametertypedescription
idstringカスタムユーザーID


例:

AppsFlyer.setCustomerUserId("custom_user_id");

setAppInviteOneLinkID

void setAppInviteOneLinkID(string oneLinkId)

ユーザー招待APIに使用するOneLink IDを設定する
ユーザー招待において生成されるリンクは、この OneLink IDをベースのドメインとして使用します。

parametertypedescription
oneLinkIdstringユーザー招待計測用のOneLink ID


例:

AppsFlyer.setAppInviteOneLinkID("abcd");

setAdditionalData

void setAdditionalData(Dictionary<string, string> customData)

Segment、Adobe、Urban Airshipなどの外部のパートナープラットフォームとSDKレベルで連携する際には、setAdditionalDataのAPIが必要です。
このAPIは、各プラットフォームの連携のサポートページに、setAdditionalDataのAPIが必要であると記載されている場合にのみ、使用してください。

parametertypedescription
customDataDictionary<string, string>追加データ


例:

Dictionary<string, string> customData = new Dictionary<string, string>();
customData.Add("custom1", "someData");
AppsFlyer.setAdditionalData(customData);

setResolveDeepLinkURLs

void setResolveDeepLinkURLs(params string[] urls)

Android App LinksをサポートするOneLinksを使っており、第三者ユニバーサルリンクでラップする場合、setResolveDeepLinkURLs APIを使ってAppsFlyer SDKに通知できます。
アプリを呼び出すクリックドメインはAppsFlyer SDKによって解析され、もととなるOneLinkを抽出します。これにより第三者ユニバーサルリンクでラップしていてもディープリンクおよびアトリビューションを計測することができます。このAPIはSDK初期化よりも前に必ず呼び出してください。

parametertypedescription
urlsparams string[]array of urls(URL配列)


例:

AppsFlyer.setResolveDeepLinkURLs("test.com", "test2.ca");

setOneLinkCustomDomain

void setOneLinkCustomDomain(params string[] domains)

広告主はこのメソッドを利用して、カスタムOneLinkドメイン (Branded OneLink) を設定できます。

parametertypedescription
domainsparams string[]array of custom domains(カスタムドメインの配列)


例:

 AppsFlyer.setOneLinkCustomDomain("test.domain", "test2.domain");

setCurrencyCode

void setCurrencyCode(string currencyCode)

アプリ内購入における現地通貨コードの設定。
通貨コードは3桁のISO 4217コードを使用してください。(デフォルト通貨設定:米ドル - USD)
すべてのイベントの通貨コードを設定するには、次のメソッドを呼び出します:

parametertypedescription
currencyCodestring3文字の ISO 4217コードです。(デフォルト通貨設定:USD)


例:

AppsFlyer.setCurrencyCode("GBP");


setDeepLinkTimeout

void setDeepLinkTimeout(long deepLinkTimeout)

Setting the deepLink timeout value that should be used for DDL.
If you want to use it, set it before the DDL setting.

parametertypedescription
deepLinkTimeoutlongin milliseconds


例:

AppsFlyer.setDeepLinkTimeout(2000);

enableTCFDataCollection

void enableTCFDataCollection(bool shouldCollectTcfData)

Calling enableTCFDataCollection(true) will enable collecting and sending any TCF related data.
Calling enableTCFDataCollection(false) will disable the collection of TCF related data and from sending it.

parametertypedescription
shouldCollectTcfDatabooltrue to enable data collection


例:

AppsFlyer.enableTCFDataCollection(true);;

setConsentData

void setConsentData(AppsFlyerConsent appsFlyerConsent)

Sets or updates the user consent data related to GDPR and DMA regulations for advertising and data usage purposes within the application.

parametertypedescription
appsFlyerConsentAppsFlyerConsentInstance of AppsFlyerConsent class


例:

AppsFlyerConsent consent = AppsFlyerConsent.ForGDPRUser(false, false);
AppsFlyer.setConsentData(consent);

recordLocation

void recordLocation(double latitude, double longitude)

ユーザーのロケーションをマニュアルで記録します。

parametertypedescription
latitudedoubleユーザーの緯度
longitudedoubleユーザーの経度


例:

AppsFlyer.recordLocation(40.7128, 74.0060);

anonymizeUser

void anonymizeUser(bool shouldAnonymizeUser)

AppsFlyerでは、AppsFlyer上で特定のユーザーを匿名化するための方法が用意されています。
この方法は、最新のプライバシー要件に準拠し、Facebookのデータおよびプライバシーポリシーに準拠しています。デフォルトは NO で、デフォルトでは匿名化は実行されません。
ユーザーのインストール、イベント、セッションの計測を明示的に匿名化するには、SDKの初期化中にこのAPIを使用してください。
匿名化をキャンセルするには、anonymizeUser を再度呼び出し、false に設定します。

警告
ユーザーを匿名化すると、アトリビューション情報に重大な影響があります。ユーザーの情報を収集することが法的に禁じられている地域でのみ、このオプションを使用してください。

parametertypedescription
shouldAnonymizeUserbool匿名化を実行する場合:true


例:

AppsFlyer.anonymizeUser(true);

getAppsFlyerId

string getAppsFlyerId()

AppsFlyerのユニークIDは、アプリの新規インストールごとに採番されます。
AppsFlyerのユニークIDを取得するには、次のAPIを使用します。


例:

string uid = AppsFlyer.getAppsFlyerId(); 

setMinTimeBetweenSessions

void setMinTimeBetweenSessions(int seconds)

デフォルトでは、それぞれ別のセッションとしてカウントされるには、2つのアプリ起動の間に、少なくとも5秒間の間隔をあける必要があります。
詳細:セッション数のカウントについて - https://support.appsflyer.com/hc/ja/articles/360000520785-%E3%82%BB%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E6%95%B0%E3%81%AE%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

次のAPIを使用して、セッション間で必要な最小時間にカスタム値を設定できます。

注意:セッション間隔のカスタム値に長い時間を設定すると、ディープリンクなどセッションデータと関連のあるAPIに悪影響を及ぼす可能性があるためご注意ください。

parametertypedescription
secondsintセッション間の時間(デフォルト:5秒)


例:

AppsFlyer.setMinTimeBetweenSessions(4);

setHost

void setHost(string hostPrefixName, string hostName)

カスタムホストを設定します。

parametertypedescription
hostPrefixNamestring
hostNamestring


例:

AppsFlyer.setHost("hostPrefixName","hostName");

setUserEmails

void setUserEmails(EmailCryptType cryptMethod, params string[] emails)

ユーザーのメールアドレスを設定し暗号化します。

cryptMethod 暗号化メソッド:
EmailCryptType.EmailCryptTypeSHA256
EmailCryptType.EmailCryptTypeNone

parametertypedescription
cryptMethodEmailCryptTypenone もしくは sha256
emailsparams string[]メールアドレスのリスト


例:

AppsFlyer.setUserEmails(EmailCryptType.EmailCryptTypeSHA256, "[email protected]", "[email protected]");

setPhoneNumber

void setPhoneNumber(string phoneNumber)

ユーザーの電話番号を設定します。

parametertypedescription
phoneNumberstring


例:

AppsFlyer.setPhoneNumber("4166358181");

getConversionData

void getConversionData(string objectName);


Conversion Data Listener(コンバージョンデータリスナー)を登録します。
開発者は、SDKレベルから直接、新規インストールごとにユーザーアトリビューションデータにリアルタイムでアクセスできます。
これにより、パーソナライズされたコンテンツをユーザーに提供したり、アプリ内の特定画面に遷移させたりすることで、アプリとのエンゲージメントを大幅に高めることができます。

コールバックを取得するには、IAppsFlyerConversionData インターフェイスを実装します。

parametertypedescription
objectNamestringIAppsFlyerConversionData インターフェイスを持つゲームオブジェクト


例:

AppsFlyer.getConversionData(gameObject.name);

attributeAndOpenStore

void attributeAndOpenStore(string appID, string campaign, Dictionary<string, string> userParams, MonoBehaviour gameObject)

次のコードを使用して、クリックとアプリのアプリストアページの起動を計測します。

コールバックを取得するには、IAppsFlyerUserInvite インターフェイスを実装します。

parametertypedescription
appIDstring
campaignstring
userParamsDictionary<string, string>
gameObjectMonoBehaviourIAppsFlyerUserInvite インターフェイスを持つゲームオブジェクト


例:

Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters.Add("af_sub1", "val");
parameters.Add("custom_param", "val2");
AppsFlyer.attributeAndOpenStore("123456789", "test campaign", parameters, this);

recordCrossPromoteImpression

void recordCrossPromoteImpression(string appID, string campaign);

インプレッションを計測するには、次のAPIコールを使用します。
AppsFlyerの管理画面上に表示されているアプリIDを使用していることをご確認ください。

parametertypedescription
appIDstringアプリID
campaignstringcampaign
paramsDictionary<string, string>追加のパラメータ


例:

Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters.Add("af_sub1", "val");
parameters.Add("custom_param", "val2");
AppsFlyer.recordCrossPromoteImpression("appID", "campaign", parameters);

generateUserInviteLink

void generateUserInviteLink(Dictionary<string, string> parameters, MonoBehaviour gameObject)

LinkGenerator クラスは、クリックで追加情報を渡すことができるさまざまなセッターメソッドに従って、ユーザー招待のURLを作成します。
参照:ユーザー招待計測

parametertypedescription
parametersDictionary<string, string>
gameObjectMonoBehaviourIAppsFlyerUserInvite インターフェイスを持つゲームオブジェクト


例:

AppsFlyer.generateUserInviteLink(params, this);

setSharingFilterForAllPartners Deprecated

void setSharingFilterForAllPartners()

広告主がすべてのアドネットワーク/連携パートナーに対して、データを共有しないようにするために使用します。


例:

AppsFlyer.setSharingFilterForAllPartners();

setSharingFilter Deprecated

void setSharingFilter(params string[] partners)

広告主が、一部の(1つ以上の)ネットワーク/連携パートナーを設定して、データの取得から除外するために使用されます。

parametertypedescription
partnersparams string[] partnersデータ取得から除外するパートナー(媒体など)


例:

AppsFlyer.setSharingFilter("googleadwords_int","snapchat_int","doubleclick_int");

setSharingFilterForPartners

void setSharingFilterForPartners(params string[] partners)

広告主が、一部の(1つ以上の)ネットワーク/連携パートナーを設定して、データの取得から除外するために使用されます。

parametertypedescription
partnersparams string[] partnersデータ取得から除外するパートナー(媒体など)


例:

AppsFlyer.setSharingFilterForPartners("partner1_int"); // Single partner
AppsFlyer.setSharingFilterForPartners("partner1_int", "partner2_int"); // Multiple partners
AppsFlyer.setSharingFilterForPartners("all"); // All partners
AppsFlyer.setSharingFilterForPartners(""); // Reset list (default)
AppsFlyer.setSharingFilterForPartners(); // Reset list (default)

setPartnerData

void setPartnerData(string partnerID, params string[] partnerInfo)

パートナーとの連携を目的としたカスタムデータの送信を可能にします。

parametertypedescription
partnerIDstringパートナーID(通常「_int」というサフィックスが付きます)
partnerInfoparams string[]カスタマーデータ。特定のパートナーとの連携設定により異なります


例:

   Dictionary<string, string> partnerInfo = new Dictionary<string, string>();
        partnerInfo.Add("puid", "1234567890");
        AppsFlyer.setPartnerData("partner_test", partnerInfo);

Android専用API

updateServerUninstallToken

void updateServerUninstallToken(string token)

アンインストール計測のために、Firebase Device Tokenを手動で渡します。

parametertypedescription
tokenstringFirebase FCM token


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.updateServerUninstallToken("token");
#endif

setImeiData

void setImeiData(string imei)

デフォルト:OSバージョンがKitKat(4.4)より新しく、デバイスにGoogle Play Servicesが含まれている場合(SDKのバージョンが4.8.8以前でGoogle Play Servicesが必要な特定のアプリ)、IMEIとAndroid IDはSDKによって収集されません。 このAPIを使用してAppsFlyerにOAIDを明示的に送信します。

parametertypedescription
imeistring端末のIMEI


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setImeiData("imei");
#endif

setAndroidIdData

void setAndroidIdData(string androidId)

デフォルト:OSバージョンが KitKat(4.4)よりも新しく、デバイスにGoogle Playサービスが含まれている場合(SDKバージョン4.8.8以下では、特定のアプリに必要なGPSが必要です)、SDKは、IMEIとAndroid IDを収集しません。
このAPIを使用して、明示的にAndroid IDをAppsFlyerに送信してください。

parametertypedescription
androidIdstring端末のAndroid ID


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setAndroidIdData("androidId");
#endif

waitForCustomerUserId

void waitForCustomerUserId(bool wait)

customerUserID がセットされるまで、SDKの初期化を遅らせることができます。
この機能を使用すると、customerUserIDが設定されるまで、SDKは動作を開始しません。
注意:このAPIが使用されている場合、customerUserID が指定されるまで、すべてのアプリ内イベントとその他の SDK API 呼び出しは破棄されます。アプリにおいて、起動と同時に会員番号やアプリユーザーIDを付与しない場合は実装を推奨しません。

parametertypedescription
waitboolSDKで customerUserIDのセットを待機する場合:true
(特別な計測のニーズがない限り非推奨)


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.waitForCustomerUserId(true);
#endif

setCustomerIdAndStartSDK

void setCustomerIdAndStartSDK(string id)

⚠️

Before calling this method, the method waitForCustomerUserId must be called

この API を使用して、関連するカスタマーユーザー IDをSDKに提供し、SDKをトリガーして通常のアクティビティを開始します。

parametertypedescription
idstringクライアントのカスタマーID。


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setCustomerIdStartSDK("id");
#endif

getOutOfStore

string getOutOfStore()

現在のAF_STOREの値を取得します。


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        string af_store = AppsFlyer.getOutOfStore();
#endif

setOutOfStore

void setOutOfStore(string sourceName)

AF_STOREの値をマニュアルで設定します。

parametertypedescription
sourceNamestring


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setOutOfStore("sourceName");
#endif

setCollectAndroidID

void setCollectAndroidID(bool isCollect)

Android ID取得のオプトアウト。
アプリがGooglePlay Servicesを搭載していない場合に、Android IDがSDKによって取得されます。
ただし、Google Play Servicesを使用したアプリの場合、Android IDの収集がGoogle Playのポリシーに違反するため、収集を行わないようにしてください。

parametertypedescription
isCollectbool


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setCollectAndroidID(true);
#endif

setCollectIMEI

void setCollectIMEI(bool isCollect)

IMEI収集のオプトアウト。
アプリにGoogle Play Servicesを含まない場合、SDKはデバイスのIMEIを収集します。
ただし、Google Play Servicesを使用したアプリの場合、IMEIの収集がGoogle Playのポリシーに違反するため、収集を行わないようにしてください。

parametertypedescription
isCollectbool


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setCollectIMEI(true);
#endif

setIsUpdate

void setIsUpdate(bool isUpdate)

アプリがアップデートされたことを手動で設定します。

parametertypedescription
isUpdateboolアプリが更新された場合:true


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setIsUpdate(true);
#endif

setPreinstallAttribution

void setPreinstallAttribution(string mediaSource, string campaign, string siteId)

プリインストールを発生させた端末メーカーやメディアソース名を指定します。

parametertypedescription
mediaSourcestringプリインストール計測のメーカー名またはメディアソース名。
campaignstringプリインストール計測のキャンペーン名。
siteIdstringプリインストール計測のサイトID。


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setPreinstallAttribution("mediaSource", "campaign", "siteId");
#endif

isPreInstalledApp

bool isPreInstalledApp()

端末メーカーによるプリインストール向けの Boolean インジケータです。


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        if (AppsFlyer.isPreInstalledApp())
        {

        }
#endif

handlePushNotifications

void handlePushNotifications()
handlePushNotifications API が呼び出されると、プッシュ通知が計測されます。


例:

AppsFlyer.handlePushNotifications();

getAttributionId

string getAttributionId()

存在する場合、Facebookのattribution IDを取得します。


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        string attributionId = AppsFlyer.getAttributionId();
#endif

validateAndSendInAppPurchase-beta

void validateAndSendInAppPurchase(AFPurchaseDetailsAndroid details, string> additionalParameters, MonoBehaviour gameObject)

アプリ内課金をサーバー検証するためのAPIです。
検証が成功すると、関連するイベント値を持つ af_purchase イベントが自動的に送信されます。

parametertypedescription
detailsAFPurchaseDetailsAndroidInstance of AFPurchaseDetailsAndroid class
additionalParametersDictionary<string, string>購入時に一緒に送信されるパラメーター
gameObjectMonoBehaviourコールバックを送信するためのゲームオブジェクト


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AFPurchaseDetailsAndroid details = new AFPurchaseDetailsAndroid(AFPurchaseType.Subscription, 
        "token", "productId", "price", "currency");
        
        AppsFlyer.validateAndSendInAppPurchase(
        details, 
        null, 
        this);
#endif

validateAndSendInAppPurchase

void validateAndSendInAppPurchase(string publicKey, string signature, string purchaseData, string price, string currency, Dictionary<string, string> additionalParameters, MonoBehaviour gameObject)

アプリ内課金をサーバー検証するためのAPIです。
検証が成功すると、関連するイベント値を持つ af_purchase イベントが自動的に送信されます。

parametertypedescription
publicKeystringGoogle Play Consoleから取得したLicense Key。
signaturestringdata.INAPP_DATA_SIGNATURE.
purchaseDatastringdata.INAPP_PURCHASE_DATA
pricestring購入価格
currencystringプリインストール計測のサイトID。
additionalParametersDictionary<string, string>購入時に一緒に送信されるパラメーター
gameObjectMonoBehaviourコールバックを送信するためのゲームオブジェクト


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.validateAndSendInAppPurchase(
        "publicKey", 
        "signature", 
        "purchaseData", 
        "price", 
        "currency", 
        null, 
        this);
#endif

setCollectOaid

void setCollectOaid(boolean isCollect)

setCollectOaid

You must include the appsflyer oaid library for this api to work.
parametertypedescription
isCollectboolOAID収集をを許可する場合:true


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setCollectOaid(true);
#endif

setDisableAdvertisingIdentifiers

void setDisableAdvertisingIdentifiers(boolean disable)

setDisableAdvertisingIdentifiers

Disables collection of various Advertising IDs by the SDK. This includes Google Advertising ID (GAID), OAID and Amazon Advertising ID (AAID)
parametertypedescription
disablebool無効にするには:true


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setDisableAdvertisingIdentifiers(true);
#endif


setDisableNetworkData

void setDisableNetworkData(boolean disable)

setDisableNetworkData

Use to opt-out of collecting the network operator name (carrier) and sim operator name from the device.
parametertypedescription
disableboolオプトアウトする場合:true


例:

#if UNITY_ANDROID && !UNITY_EDITOR
        AppsFlyer.setDisableNetworkData(true);
#endif

iOS専用API

setDisableCollectAppleAdSupport

void setDisableCollectAppleAdSupport(bool disable)

AppsFlyer SDK collects Apple's advertisingIdentifier if the AdSupport.framework is included in the SDK.
You can disable this behavior by setting the following property to true.

parametertypedescription
disablebool


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.setDisableCollectAppleAdSupport(true);
#endif

handlePushNotifications(iOS)

void handlePushNotification(Dictionary<string, string> pushPayload)
When the handlePushNotifications API is called from a service that is swizzling, like Firebase, the push notifications payload will be handled by the AppsflyerSDK.

parametertypedescription
pushPayloadDictionary<string, string>the push notification payload


例:

#if UNITY_IOS && !UNITY_EDITOR
    // e.Message.Data = push notification payload
    var dataDict = new Dictionary<string, string>(e.Message.Data);
    AppsFlyeriOS.handlePushNotification(dataDict);
#endif

setShouldCollectDeviceName

void setShouldCollectDeviceName(bool shouldCollectDeviceName)

このフラグを true に設定すると、現在の端末名が収集されます。
例: "My iPhone" (デフォルト設定:false)

parametertypedescription
shouldCollectDeviceNamebool


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.setShouldCollectDeviceName(true);
#endif

setDisableCollectIAd

void setDisableCollectIAd(bool disableCollectIAd)

Apple Search Adsの計測を無効化します。

parametertypedescription
disableCollectIAdbool


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.setDisableCollectIAd(true);
#endif

setUseReceiptValidationSandbox

void setUseReceiptValidationSandbox(bool useReceiptValidationSandbox)

iOS(本番環境 or サンドボックス)でのアプリ内課金の検証をします。デフォルト設定はfalseです。

parametertypedescription
useReceiptValidationSandboxboolアプリ内購入がサンドボックスで行われる場合:true


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.setUseReceiptValidationSandbox(true);
#endif

setUseUninstallSandbox

void setUseUninstallSandbox(bool useUninstallSandbox)

iOS(本番環境 or サンドボックス)でのアンインストール計測をテストするには、このフラグを設定してください。 デフォルト設定はfalseです。

parametertypedescription
useUninstallSandboxboolAPN証明書を使用している場合:true


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.setUseUninstallSandbox(true);
#endif

validateAndSendInAppPurchase-beta-iOS

void validateAndSendInAppPurchase(AFSDKPurchaseDetailsIOS details, Dictionary<string, string> extraEventValues, MonoBehaviour gameObject)

アプリ内課金を送信して検証するには、ProcessPurChase メソッドからこのメソッドを呼び出します。

parametertypedescription
detailsAFSDKPurchaseDetailsIOSInstance of AFSDKPurchaseDetailsIOS class.
extraEventValuesDictionary<string, string>ローレポートで受け取る追加のパラメーター
gameObjectMonoBehaviourthe game object for the


例:

#if UNITY_IOS && !UNITY_EDITOR
        AFSDKPurchaseDetailsIOS details = AFSDKPurchaseDetailsIOS.Init("productId", "price", "currency",
        "transactionId");
        AppsFlyer.validateAndSendInAppPurchase(
        details, 
        null, 
        this);
#endif

validateAndSendInAppPurchase

void validateAndSendInAppPurchase(string productIdentifier, string price, string currency, string tranactionId, Dictionary<string, string> additionalParameters, MonoBehaviour gameObject)

アプリ内課金を送信して検証するには、ProcessPurChase メソッドからこのメソッドを呼び出します。

parametertypedescription
productIdentifierstringプロダクト識別子
pricestring商品金額
currencystring商品通貨
tranactionIdstring購入トランザクションID
additionalParametersDictionary<string, string>ローレポートで受け取る追加のパラメーター
gameObjectMonoBehaviourコールバックのゲームオブジェクト


例:

#if UNITY_IOS && !UNITY_EDITOR
        AppsFlyer.validateAndSendInAppPurchase(
        "productIdentifier", 
        "price", 
        "currency", 
        "tranactionId", 
        null, 
        this);
#endif

registerUninstall

void registerUninstall(byte[] deviceToken)

アンインストールの登録 - リモート通知の登録を行い、AppsFlyerにプッシュデバイストークンを提供する必要があります。

parametertypedescription
deviceTokenbyte[]APIトークン


例:

    private bool tokenSent;

    void Update()
    {
#if UNITY_IOS && !UNITY_EDITOR
        if (!tokenSent)
        {
            byte[] token = UnityEngine.iOS.NotificationServices.deviceToken;
            if (token != null)
            {
                AppsFlyer.registerUninstall(token);
                tokenSent = true;
            }
        }
#endif
    }


handleOpenUrl

void handleOpenUrl(string url, string sourceApplication, string annotation)

In case you want to track deep linking manually call handleOpenUrl.
The continueUserActivity and onOpenURL are implemented in the AppsFlyerAppController.mm class, so 
only use this method if the other methods do not cover your apps deeplinking needs.
parametertypedescription
urlstringAppDelegate に渡されるURL
sourceApplicationstringAppDelegate に渡される sourceApplication
annotationstringApp delegate に渡される注釈


例:

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyer.handleOpenUrl(string url, string sourceApplication, string annotation);
#endif

waitForATTUserAuthorizationWithTimeoutInterval

void waitForATTUserAuthorizationWithTimeoutInterval(int timeoutInterval)

詳細はこちらを参照してください。

parametertypedescription
timeoutIntervalintIDFA取得を待機する時間


例:

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyer.waitForATTUserAuthorizationWithTimeoutInterval(60);
#endif

disableSKAdNetwork

bools disableSKAdNetwork(bool isDisabled)

parametertypedescription
isDisabledboolSKAdネットワークを無効にする場合:true


例:

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyer.disableSKAdNetwork(true);
#endif

setLanguage

setCurrentDeviceLanguage(string language)

parametertypedescription
languageString設定する言語


例:

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyer.setCurrentDeviceLanguage("english");
#endif

disableIDFVCollection

disableIDFVCollection(bool isDisabled)

parametertypedescription
isDisabledboolTrue to disable IDFV collection


例:

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyer.disableIDFVCollection(true);
#endif

IAppsFlyerConversionData

onConversionDataSuccess

public void onConversionDataSuccess(string conversionData)

ConversionData には、インストールに関する情報が含まれています。
オーガニック / 非オーガニックな詳しくはこちらをご覧ください。

parametertypedescription
conversionDatastring返されたコンバージョンデータのJSON文字列


例:

   public void onConversionDataSuccess(string conversionData)
    {
        AppsFlyer.AFLog("onConversionDataSuccess", conversionData);
        Dictionary<string, object> conversionDataDictionary = AppsFlyer.CallbackStringToDictionary(conversionData);
        // add deferred deeplink logic here
    }

onConversionDataFail

public void onConversionDataFail(string error)

parametertypedescription
errorstringエラーを説明する文字列


例:

    public void onConversionDataFail(string error)
    {
        AppsFlyer.AFLog("onConversionDataFail", error);
    }

onAppOpenAttribution

public void onAppOpenAttribution(string attributionData)

attributionData には、OneLinkとディープリンクに関する情報が含まれています。

parametertypedescription
attributionDatastring返されたディープリンクデータのJSON文字列


例:

    public void onAppOpenAttribution(string attributionData)
    {
        AppsFlyer.AFLog("onAppOpenAttribution", attributionData);
        Dictionary<string, object> attributionDataDictionary = AppsFlyer.CallbackStringToDictionary(attributionData);
        // add direct deeplink logic here
    }

onAppOpenAttributionFailure

public void onAppOpenAttributionFailure(string error)

アトリビューションリクエスト中に発生したエラー

parametertypedescription
errorstringエラーを説明する文字列


例:

  public void onAppOpenAttributionFailure(string error)
    {
        AppsFlyer.AFLog("onAppOpenAttributionFailure", error);
    }

IAppsFlyerUserInvite

onInviteLinkGenerated

public void onInviteLinkGenerated(string link)

OneLink URLを生成するための成功コールバック

parametertypedescription
linkstring生成されたリンク


例:

   public void onInviteLinkGenerated(string link)
    {

    }

onInviteLinkGeneratedFailure

public void onInviteLinkGeneratedFailure(string error)

OneLink URLを生成するためのエラーコールバック

parametertypedescription
errorstringエラーを説明する文字列


例:

    public void onInviteLinkGeneratedFailure(string error)
    {
        AppsFlyer.AFLog("onInviteLinkGeneratedFailure", error);
    }

onOpenStoreLinkGenerated

public void onOpenStoreLinkGenerated(string link)

iOSでは、StoreKit コンポーネントを使用して、アプリのコンテキストを維持しながら、App Storeを開くことができます。

詳細はこちらをご覧ください。

parametertypedescription
attributionDatastring返されたディープリンクデータのJSON文字列


例:

    public void onOpenStoreLinkGenerated(string link)
    {

    }

IAppsFlyerValidateReceipt

didFinishValidateReceipt

public void didFinishValidateReceipt(string result)

validateAndSendInAppPurchase APIのサクセスコールバック
Android: コールバックは "Validate success" を返します。
iOS: コールバックは apples verifyReceipt API からJSON文字列を返します。

parametertypedescription
resultstring結果の検証


例:

   public void didFinishValidateReceipt(string link)
    {

    }

IAppsFlyerValidateAndLog

onValidateAndLogComplete

public void didFinishValidateReceipt(string result)

The success callback for validateAndSendInAppPurchase API.

The callback will return a JSON string which can be converted to dictionary.

parametertypedescription
resultstring結果の検証


例:

   public void onValidateAndLogComplete(string result)
    {
        AppsFlyer.AFLog("onValidateAndLogComplete", result);
        Dictionary<string, object> validateAndLogDataDictionary = AppsFlyer.CallbackStringToDictionary(result);
    }

onValidateAndLogFailure

public void onValidateAndLogFailure(string error)

The error callback for validating receipts.

The callback will return a JSON string which can be converted to dictionary.

parametertypedescription
errorstringエラーを説明する文字列


例:

    public void onValidateAndLogFailure(string error)
    {
         AppsFlyer.AFLog("onValidateAndLogFailure", error); 
    }

アプリ内イベント

onRequestResponse

public static event EventHandler OnRequestResponse

セッションのコールバック

statusCodeerrorDescription
200null
10"Event timeout. Check 'minTimeBetweenSessions' param"
11"Skipping event because 'isStopTracking' enabled"
40ネットワークエラー:Android経由のエラーの説明
41"No dev key"
50"Status code failure" + サーバーからの実際のエラーコード


例:

    AppsFlyer.OnRequestResponse += (sender, args) =>
    {
        var af_args = args as AppsFlyerRequestEventArgs;
        AppsFlyer.AFLog("AppsFlyerOnRequestResponse", "status code" + af_args.statusCode);
    };

onInAppResponse

public static event EventHandler OnInAppResponse

アプリ内イベントのコールバック

statusCodeerrorDescription
200null
10"Event timeout. Check 'minTimeBetweenSessions' param"
11"Skipping event because 'isStopTracking' enabled"
40ネットワークエラー:Android経由のエラーの説明
41"No dev key"
50"Status code failure" + サーバーからの実際のエラーコード


例:


    AppsFlyer.OnInAppResponse += (sender, args) =>
    {
        var af_args = args as AppsFlyerRequestEventArgs;
        AppsFlyer.AFLog("OnRequestResponse", "status code" + af_args.statusCode);
    }; 


onDeepLinkReceived

public static event EventHandler OnDeepLinkReceived

Unified Deeplink APIのコールバック


例:


    // First call init with devKey, appId and gameObject
    AppsFlyer.initSDK(devKey, appID, this);


    AppsFlyer.OnDeepLinkReceived += (sender, args) =>
    {
        var deepLinkEventArgs = args as DeepLinkEventsArgs;

        // DEEPLINK LOGIC HERE
    };