APIリファレンス
このプラグインで使用可能なメソッドのリストを以下に説明します。
- Android, iOS & Windows向けのAPI
- Android / iOS向けのAPI
- stopSDK
- isSDKStopped
- getSdkVersion
- setIsDebug
- addPushNotificationDeepLinkPath
- setCustomerUserId
- setAppInviteOneLinkID
- setAdditionalData
- setResolveDeepLinkURLs
- setOneLinkCustomDomain
- setCurrencyCode
- setDeepLinkTimeout
- enableTCFDataCollection
- setConsentData
- recordLocation
- anonymizeUser
- getAppsFlyerId
- setMinTimeBetweenSessions
- setHost
- setUserEmails
- setPhoneNumber
- getConversionData
- attributeAndOpenStore
- logAdRevenue
- recordCrossPromoteImpression
- generateUserInviteLink
- setSharingFilterForAllPartners (廃版)
- setSharingFilter(廃版)
- setSharingFilterForPartners
- setPartnerData
- Android専用API
- updateServerUninstallToken
- setImeiData
- setAndroidIdData
- waitForCustomerUserId
- setCustomerIdAndStartSDK
- getOutOfStore
- setOutOfStore
- setCollectAndroidID
- setCollectIMEI
- setIsUpdate
- setPreinstallAttribution
- isPreInstalledApp
- handlePushNotifications
- getAttributionId
- validateAndSendInAppPurchase-beta
- validateAndSendInAppPurchase
- setCollectOaid
- setDisableAdvertisingIdentifiers
- setDisableNetworkData
- iOS専用API
- setDisableCollectAppleAdSupport
- handlePushNotifications(iOS)
- setShouldCollectDeviceName
- setDisableCollectIAd
- setUseReceiptValidationSandbox
- setUseUninstallSandbox
- validateAndSendInAppPurchase-beta-iOS
- validateAndSendInAppPurchase
- registerUninstall
- handleOpenUrl
- waitForATTUserAuthorizationWithTimeoutInterval
- disableSKAdNetwork
- setLanguage
- disableIDFVCollection
- IAppsFlyerConversionData
- IAppsFlyerUserInvite
- IAppsFlyerValidateReceipt
- IAppsFlyerValidateAndLog
- アプリ内イベント
Android, iOS & Windows向けのAPI
initSDK
void initSDK(string devKey, string appID, MonoBehaviour gameObject)
AppsFlyer SDKをDevキーとアプリIDで初期化してください。Devキーは全てのアプリで必要ですが、アプリIDはiOSのみで必要です。アプリがAndroidのみである場合には、appIDはnullで渡してください。
parameter | type | description |
---|---|---|
dev_key | string | AppsFlyerのDevキーは、AppsFlyer管理画面 左メニュー > アプリ設定 画面から取得できます。 |
app_id | string | アプリの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の使用は、アトリビューションやデータ収集、ディープリンクの機能に影響を与えますのでご注意ください。
parameter | type | description |
---|---|---|
isSDKStopped | bool | SDKが停止している場合: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 に設定します。
parameter | type | description |
---|---|---|
shouldEnable | bool | デバッグモードがオンの場合:true(デフォルト値:false) |
例:
AppsFlyer.setIsDebug(true);
addPushNotificationDeepLinkPath
void addPushNotificationDeepLinkPath(params string[] paths)
キーの配列を追加します。これは、プッシュ通知のペイロードからディープリンクを解決するためのキーパスを構成するために使用されます。
parameter | type | description |
---|---|---|
paths | string[] | 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と相互参照することができます。
parameter | type | description |
---|---|---|
id | string | カスタムユーザーID |
例:
AppsFlyer.setCustomerUserId("custom_user_id");
setAppInviteOneLinkID
void setAppInviteOneLinkID(string oneLinkId)
ユーザー招待APIに使用するOneLink IDを設定する
ユーザー招待において生成されるリンクは、この OneLink IDをベースのドメインとして使用します。
parameter | type | description |
---|---|---|
oneLinkId | string | ユーザー招待計測用のOneLink ID |
例:
AppsFlyer.setAppInviteOneLinkID("abcd");
setAdditionalData
void setAdditionalData(Dictionary<string, string> customData)
Segment、Adobe、Urban Airshipなどの外部のパートナープラットフォームとSDKレベルで連携する際には、setAdditionalDataのAPIが必要です。
このAPIは、各プラットフォームの連携のサポートページに、setAdditionalDataのAPIが必要であると記載されている場合にのみ、使用してください。
parameter | type | description |
---|---|---|
customData | Dictionary<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初期化よりも前に必ず呼び出してください。
parameter | type | description |
---|---|---|
urls | params string[] | array of urls(URL配列) |
例:
AppsFlyer.setResolveDeepLinkURLs("test.com", "test2.ca");
setOneLinkCustomDomain
void setOneLinkCustomDomain(params string[] domains)
広告主はこのメソッドを利用して、カスタムOneLinkドメイン (Branded OneLink) を設定できます。
parameter | type | description |
---|---|---|
domains | params string[] | array of custom domains(カスタムドメインの配列) |
例:
AppsFlyer.setOneLinkCustomDomain("test.domain", "test2.domain");
setCurrencyCode
void setCurrencyCode(string currencyCode)
アプリ内購入における現地通貨コードの設定。
通貨コードは3桁のISO 4217コードを使用してください。(デフォルト通貨設定:米ドル - USD)
すべてのイベントの通貨コードを設定するには、次のメソッドを呼び出します:
parameter | type | description |
---|---|---|
currencyCode | string | 3文字の 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.
parameter | type | description |
---|---|---|
deepLinkTimeout | long | in 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.
parameter | type | description |
---|---|---|
shouldCollectTcfData | bool | true 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.
parameter | type | description |
---|---|---|
appsFlyerConsent | AppsFlyerConsent | Instance of AppsFlyerConsent class |
例:
AppsFlyerConsent consent = AppsFlyerConsent.ForGDPRUser(false, false);
AppsFlyer.setConsentData(consent);
recordLocation
void recordLocation(double latitude, double longitude)
ユーザーのロケーションをマニュアルで記録します。
parameter | type | description |
---|---|---|
latitude | double | ユーザーの緯度 |
longitude | double | ユーザーの経度 |
例:
AppsFlyer.recordLocation(40.7128, 74.0060);
anonymizeUser
void anonymizeUser(bool shouldAnonymizeUser)
AppsFlyerでは、AppsFlyer上で特定のユーザーを匿名化するための方法が用意されています。
この方法は、最新のプライバシー要件に準拠し、Facebookのデータおよびプライバシーポリシーに準拠しています。デフォルトは NO で、デフォルトでは匿名化は実行されません。
ユーザーのインストール、イベント、セッションの計測を明示的に匿名化するには、SDKの初期化中にこのAPIを使用してください。
匿名化をキャンセルするには、anonymizeUser を再度呼び出し、false に設定します。
警告
ユーザーを匿名化すると、アトリビューション情報に重大な影響があります。ユーザーの情報を収集することが法的に禁じられている地域でのみ、このオプションを使用してください。
parameter | type | description |
---|---|---|
shouldAnonymizeUser | bool | 匿名化を実行する場合: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に悪影響を及ぼす可能性があるためご注意ください。
parameter | type | description |
---|---|---|
seconds | int | セッション間の時間(デフォルト:5秒) |
例:
AppsFlyer.setMinTimeBetweenSessions(4);
setHost
void setHost(string hostPrefixName, string hostName)
カスタムホストを設定します。
parameter | type | description |
---|---|---|
hostPrefixName | string | |
hostName | string |
例:
AppsFlyer.setHost("hostPrefixName","hostName");
setUserEmails
void setUserEmails(EmailCryptType cryptMethod, params string[] emails)
ユーザーのメールアドレスを設定し暗号化します。
cryptMethod 暗号化メソッド:
EmailCryptType.EmailCryptTypeSHA256
EmailCryptType.EmailCryptTypeNone
parameter | type | description |
---|---|---|
cryptMethod | EmailCryptType | none もしくは sha256 |
emails | params string[] | メールアドレスのリスト |
例:
AppsFlyer.setUserEmails(EmailCryptType.EmailCryptTypeSHA256, "[email protected]", "[email protected]");
setPhoneNumber
void setPhoneNumber(string phoneNumber)
ユーザーの電話番号を設定します。
parameter | type | description |
---|---|---|
phoneNumber | string |
例:
AppsFlyer.setPhoneNumber("4166358181");
getConversionData
void getConversionData(string objectName);
Conversion Data Listener(コンバージョンデータリスナー)を登録します。
開発者は、SDKレベルから直接、新規インストールごとにユーザーアトリビューションデータにリアルタイムでアクセスできます。
これにより、パーソナライズされたコンテンツをユーザーに提供したり、アプリ内の特定画面に遷移させたりすることで、アプリとのエンゲージメントを大幅に高めることができます。
コールバックを取得するには、IAppsFlyerConversionData インターフェイスを実装します。
parameter | type | description |
---|---|---|
objectName | string | IAppsFlyerConversionData インターフェイスを持つゲームオブジェクト |
例:
AppsFlyer.getConversionData(gameObject.name);
attributeAndOpenStore
void attributeAndOpenStore(string appID, string campaign, Dictionary<string, string> userParams, MonoBehaviour gameObject)
次のコードを使用して、クリックとアプリのアプリストアページの起動を計測します。
コールバックを取得するには、IAppsFlyerUserInvite インターフェイスを実装します。
parameter | type | description |
---|---|---|
appID | string | |
campaign | string | |
userParams | Dictionary<string, string> | |
gameObject | MonoBehaviour | IAppsFlyerUserInvite インターフェイスを持つゲームオブジェクト |
例:
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);
logAdRevenue
void logAdRevenue(AFAdRevenueData adRevenueData, Dictionary<string, string> additionalParameters)
Logs ad revenue data along with additional parameters if provided.
parameter | type | description |
---|---|---|
adRevenueData | AFAdRevenueData | Instance of AFAdRevenueData containing ad revenue information |
additionalParameters | Dictionary<string, string> | An optional map of additional parameters to be logged with ad revenue data |
例:
Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters.Add("value1", "5");
parameters.Add(AdRevenueScheme.COUNTRY, "USA");
var logRevenue = new AFAdRevenueData("monetizationNetworkEx", MediationNetwork.GoogleAdMob, "USD", 0.99);
AppsFlyer.logAdRevenue(logRevenue, parameters);
recordCrossPromoteImpression
void recordCrossPromoteImpression(string appID, string campaign);
インプレッションを計測するには、次のAPIコールを使用します。
AppsFlyerの管理画面上に表示されているアプリIDを使用していることをご確認ください。
parameter | type | description |
---|---|---|
appID | string | アプリID |
campaign | string | campaign |
params | Dictionary<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を作成します。
参照:ユーザー招待計測
parameter | type | description |
---|---|---|
parameters | Dictionary<string, string> | |
gameObject | MonoBehaviour | IAppsFlyerUserInvite インターフェイスを持つゲームオブジェクト |
例:
AppsFlyer.generateUserInviteLink(params, this);
setSharingFilterForAllPartners Deprecated
void setSharingFilterForAllPartners()
広告主がすべてのアドネットワーク/連携パートナーに対して、データを共有しないようにするために使用します。
例:
AppsFlyer.setSharingFilterForAllPartners();
setSharingFilter Deprecated
void setSharingFilter(params string[] partners)
広告主が、一部の(1つ以上の)ネットワーク/連携パートナーを設定して、データの取得から除外するために使用されます。
parameter | type | description |
---|---|---|
partners | params string[] partners | データ取得から除外するパートナー(媒体など) |
例:
AppsFlyer.setSharingFilter("googleadwords_int","snapchat_int","doubleclick_int");
setSharingFilterForPartners
void setSharingFilterForPartners(params string[] partners)
広告主が、一部の(1つ以上の)ネットワーク/連携パートナーを設定して、データの取得から除外するために使用されます。
parameter | type | description |
---|---|---|
partners | params 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)
パートナーとの連携を目的としたカスタムデータの送信を可能にします。
parameter | type | description |
---|---|---|
partnerID | string | パートナーID(通常「_int」というサフィックスが付きます) |
partnerInfo | params 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を手動で渡します。
parameter | type | description |
---|---|---|
token | string | Firebase 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を明示的に送信します。
parameter | type | description |
---|---|---|
imei | string | 端末の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に送信してください。
parameter | type | description |
---|---|---|
androidId | string | 端末の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を付与しない場合は実装を推奨しません。
parameter | type | description |
---|---|---|
wait | bool | SDKで 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をトリガーして通常のアクティビティを開始します。
parameter | type | description |
---|---|---|
id | string | クライアントのカスタマー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の値をマニュアルで設定します。
parameter | type | description |
---|---|---|
sourceName | string |
例:
#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のポリシーに違反するため、収集を行わないようにしてください。
parameter | type | description |
---|---|---|
isCollect | bool |
例:
#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のポリシーに違反するため、収集を行わないようにしてください。
parameter | type | description |
---|---|---|
isCollect | bool |
例:
#if UNITY_ANDROID && !UNITY_EDITOR
AppsFlyer.setCollectIMEI(true);
#endif
setIsUpdate
void setIsUpdate(bool isUpdate)
アプリがアップデートされたことを手動で設定します。
parameter | type | description |
---|---|---|
isUpdate | bool | アプリが更新された場合:true |
例:
#if UNITY_ANDROID && !UNITY_EDITOR
AppsFlyer.setIsUpdate(true);
#endif
setPreinstallAttribution
void setPreinstallAttribution(string mediaSource, string campaign, string siteId)
プリインストールを発生させた端末メーカーやメディアソース名を指定します。
parameter | type | description |
---|---|---|
mediaSource | string | プリインストール計測のメーカー名またはメディアソース名。 |
campaign | string | プリインストール計測のキャンペーン名。 |
siteId | string | プリインストール計測のサイト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 イベントが自動的に送信されます。
parameter | type | description |
---|---|---|
details | AFPurchaseDetailsAndroid | Instance of AFPurchaseDetailsAndroid class |
additionalParameters | Dictionary<string, string> | 購入時に一緒に送信されるパラメーター |
gameObject | MonoBehaviour | コールバックを送信するためのゲームオブジェクト |
例:
#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 イベントが自動的に送信されます。
parameter | type | description |
---|---|---|
publicKey | string | Google Play Consoleから取得したLicense Key。 |
signature | string | data.INAPP_DATA_SIGNATURE. |
purchaseData | string | data.INAPP_PURCHASE_DATA |
price | string | 購入価格 |
currency | string | プリインストール計測のサイトID。 |
additionalParameters | Dictionary<string, string> | 購入時に一緒に送信されるパラメーター |
gameObject | MonoBehaviour | コールバックを送信するためのゲームオブジェクト |
例:
#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.
parameter | type | description |
---|---|---|
isCollect | bool | OAID収集をを許可する場合: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)
parameter | type | description |
---|---|---|
disable | bool | 無効にするには: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.
parameter | type | description |
---|---|---|
disable | bool | オプトアウトする場合: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.
parameter | type | description |
---|---|---|
disable | bool |
例:
#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.
parameter | type | description |
---|---|---|
pushPayload | Dictionary<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)
parameter | type | description |
---|---|---|
shouldCollectDeviceName | bool |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.setShouldCollectDeviceName(true);
#endif
setDisableCollectIAd
void setDisableCollectIAd(bool disableCollectIAd)
Apple Search Adsの計測を無効化します。
parameter | type | description |
---|---|---|
disableCollectIAd | bool |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.setDisableCollectIAd(true);
#endif
setUseReceiptValidationSandbox
void setUseReceiptValidationSandbox(bool useReceiptValidationSandbox)
iOS(本番環境 or サンドボックス)でのアプリ内課金の検証をします。デフォルト設定はfalseです。
parameter | type | description |
---|---|---|
useReceiptValidationSandbox | bool | アプリ内購入がサンドボックスで行われる場合:true |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.setUseReceiptValidationSandbox(true);
#endif
setUseUninstallSandbox
void setUseUninstallSandbox(bool useUninstallSandbox)
iOS(本番環境 or サンドボックス)でのアンインストール計測をテストするには、このフラグを設定してください。 デフォルト設定はfalseです。
parameter | type | description |
---|---|---|
useUninstallSandbox | bool | APN証明書を使用している場合:true |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.setUseUninstallSandbox(true);
#endif
validateAndSendInAppPurchase-beta-iOS
void validateAndSendInAppPurchase(AFSDKPurchaseDetailsIOS details, Dictionary<string, string> extraEventValues, MonoBehaviour gameObject)
アプリ内課金を送信して検証するには、ProcessPurChase メソッドからこのメソッドを呼び出します。
parameter | type | description |
---|---|---|
details | AFSDKPurchaseDetailsIOS | Instance of AFSDKPurchaseDetailsIOS class. |
extraEventValues | Dictionary<string, string> | ローレポートで受け取る追加のパラメーター |
gameObject | MonoBehaviour | the 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 メソッドからこのメソッドを呼び出します。
parameter | type | description |
---|---|---|
productIdentifier | string | プロダクト識別子 |
price | string | 商品金額 |
currency | string | 商品通貨 |
tranactionId | string | 購入トランザクションID |
additionalParameters | Dictionary<string, string> | ローレポートで受け取る追加のパラメーター |
gameObject | MonoBehaviour | コールバックのゲームオブジェクト |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.validateAndSendInAppPurchase(
"productIdentifier",
"price",
"currency",
"tranactionId",
null,
this);
#endif
registerUninstall
void registerUninstall(byte[] deviceToken)
アンインストールの登録 - リモート通知の登録を行い、AppsFlyerにプッシュデバイストークンを提供する必要があります。
parameter | type | description |
---|---|---|
deviceToken | byte[] | 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.
parameter | type | description |
---|---|---|
url | string | AppDelegate に渡されるURL |
sourceApplication | string | AppDelegate に渡される sourceApplication |
annotation | string | App delegate に渡される注釈 |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.handleOpenUrl(string url, string sourceApplication, string annotation);
#endif
waitForATTUserAuthorizationWithTimeoutInterval
void waitForATTUserAuthorizationWithTimeoutInterval(int timeoutInterval)
詳細はこちらを参照してください。
parameter | type | description |
---|---|---|
timeoutInterval | int | IDFA取得を待機する時間 |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.waitForATTUserAuthorizationWithTimeoutInterval(60);
#endif
disableSKAdNetwork
bools disableSKAdNetwork(bool isDisabled)
parameter | type | description |
---|---|---|
isDisabled | bool | SKAdネットワークを無効にする場合:true |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.disableSKAdNetwork(true);
#endif
setLanguage
setCurrentDeviceLanguage(string language)
parameter | type | description |
---|---|---|
language | String | 設定する言語 |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.setCurrentDeviceLanguage("english");
#endif
disableIDFVCollection
disableIDFVCollection(bool isDisabled)
parameter | type | description |
---|---|---|
isDisabled | bool | True to disable IDFV collection |
例:
#if UNITY_IOS && !UNITY_EDITOR
AppsFlyer.disableIDFVCollection(true);
#endif
IAppsFlyerConversionData
onConversionDataSuccess
public void onConversionDataSuccess(string conversionData)
ConversionData には、インストールに関する情報が含まれています。
オーガニック / 非オーガニックな詳しくはこちらをご覧ください。
parameter | type | description |
---|---|---|
conversionData | string | 返されたコンバージョンデータの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)
parameter | type | description |
---|---|---|
error | string | エラーを説明する文字列 |
例:
public void onConversionDataFail(string error)
{
AppsFlyer.AFLog("onConversionDataFail", error);
}
onAppOpenAttribution
public void onAppOpenAttribution(string attributionData)
attributionData には、OneLinkとディープリンクに関する情報が含まれています。
parameter | type | description |
---|---|---|
attributionData | string | 返されたディープリンクデータの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)
アトリビューションリクエスト中に発生したエラー
parameter | type | description |
---|---|---|
error | string | エラーを説明する文字列 |
例:
public void onAppOpenAttributionFailure(string error)
{
AppsFlyer.AFLog("onAppOpenAttributionFailure", error);
}
IAppsFlyerUserInvite
onInviteLinkGenerated
public void onInviteLinkGenerated(string link)
OneLink URLを生成するための成功コールバック
parameter | type | description |
---|---|---|
link | string | 生成されたリンク |
例:
public void onInviteLinkGenerated(string link)
{
}
onInviteLinkGeneratedFailure
public void onInviteLinkGeneratedFailure(string error)
OneLink URLを生成するためのエラーコールバック
parameter | type | description |
---|---|---|
error | string | エラーを説明する文字列 |
例:
public void onInviteLinkGeneratedFailure(string error)
{
AppsFlyer.AFLog("onInviteLinkGeneratedFailure", error);
}
onOpenStoreLinkGenerated
public void onOpenStoreLinkGenerated(string link)
iOSでは、StoreKit コンポーネントを使用して、アプリのコンテキストを維持しながら、App Storeを開くことができます。
詳細はこちらをご覧ください。
parameter | type | description |
---|---|---|
attributionData | string | 返されたディープリンクデータのJSON文字列 |
例:
public void onOpenStoreLinkGenerated(string link)
{
}
IAppsFlyerValidateReceipt
didFinishValidateReceipt
public void didFinishValidateReceipt(string result)
validateAndSendInAppPurchase APIのサクセスコールバック
Android: コールバックは "Validate success" を返します。
iOS: コールバックは apples verifyReceipt API からJSON文字列を返します。
parameter | type | description |
---|---|---|
result | string | 結果の検証 |
例:
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.
parameter | type | description |
---|---|---|
result | string | 結果の検証 |
例:
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.
parameter | type | description |
---|---|---|
error | string | エラーを説明する文字列 |
例:
public void onValidateAndLogFailure(string error)
{
AppsFlyer.AFLog("onValidateAndLogFailure", error);
}
アプリ内イベント
onRequestResponse
public static event EventHandler OnRequestResponse
セッションのコールバック
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" + サーバーからの実際のエラーコード |
例:
AppsFlyer.OnRequestResponse += (sender, args) =>
{
var af_args = args as AppsFlyerRequestEventArgs;
AppsFlyer.AFLog("AppsFlyerOnRequestResponse", "status code" + af_args.statusCode);
};
onInAppResponse
public static event EventHandler OnInAppResponse
アプリ内イベントのコールバック
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" + サーバーからの実際のエラーコード |
例:
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
};
更新済 3か月前