아래에 이 플러그인에 사용할 수 있는 방법 목록을 설명했습니다.


안드로이드, iOS 및 윈도우 API

initSDK

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

앱스플라이어 SDK를 dev 키와 앱 ID로 초기화합니다.
dev 키는 모든 앱에 필요하며 앱 ID는 iOS에만 필요합니다.
앱이 안드로이드 전용인 경우 앱 ID에 null을 전달합니다.

parametertypedescription
dev_keystring앱스플라이어의 Dev-Key, 앱스플라이어 계정에서 대시보드의 '앱 설정' 에서 액세스할 수 있습니다.
app_idstring사용자 앱의 Apple ID.
gameObject (선택사항)MonoBehaviourIAppsFlyerConversionData 인터페이스가 포함되어 있는 게임 개체.

예:

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

참고: 인터페이스를 사용하는 경우에만 딥링킹을 통해 SDK를 IAppsFlyerConversionData 구현하면 됩니다.


startSDK

void startSDK()

이 API가 호출되면 SDK가 시작되고 세션이 즉시 전송되며 모든 배경(background)-전경(foreground) 전환이 발생하면 세션이 기록됩니다.

예:

 AppsFlyer.startSDK();

안드로이드 및 iOS API

stopSDK

void stopSDK(bool isSDKStopped)

간혹, 법률 및 개인 정보 보호 준수를 위해서 모든 SDK 기능을 중단해야 하는 경우가 있을 수 있습니다. stopSDK API로 이를 실행할 수 있습니다. 이 API를 호출한 후에는 당사 SDK가 더 이상 서버와 통신하지 않고 작동을 중지합니다.

서로 다른 몇 가지 사용자 옵트아웃 시나리오가 있습니다. 앱과 관련된 각 시나리오에 맞는 정확한 지침을 따르는 것을 권장합니다.

어떤 이벤트에서든 이 API에 false를 넘기면서 호출하면 SDK를 다시 활성화할 수 있습니다.

중요 사항:
stopSDK()가 true로 설정된 경우 startSDK()을 호출하지 마십시오.

SDK 기능을 다시 시작하려면 다음 API를 사용하십시오.

AppsFlyer.stopSDK(false);

경고
사용자의 SDK 기능을 완전히 제외하려는 경우에만 stopSDK API를 사용하십시오. 이 API를 사용하면 어트리뷰션, 데이터 수집 및 딥링킹 동작에 심각한 영향을 줄 수 있습니다.

parametertypedescription
isSDKStoppedboolSDK가 중지되면 True (기본 값은 false).

예:

AppsFlyer.stopSDK(true);

isSDKStopped

bool isSDKStopped()

stopSDK(부울 값) API를 다음으로 설정 true.

예:

if (!AppsFlyer.isSDKStopped())
{
  
}

getSdkVersion

string getSdkVersion()

앱이 사용하는 앱스플라이어 SDK 버전을 가져옵니다.

예:

string version = AppsFlyer.getSdkVersion();

setIsDebug

void setIsDebug(bool shouldEnable)

앱스플라이어 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)

자체 커스텀 ID를 설정하면 자체 유저 ID를 앱스플라이어의 고유 ID와 다른 기기의 ID와 연결하여 상호 참조할 수 있습니다. 이 ID는 앱스플라이어 CSV 리포트와 포스트백 API에서 내부 ID와 상호 참조할 수 있습니다.

parametertypedescription
idstring커스텀 사용자 ID

예:

AppsFlyer.setCustomerUserId("custom_user_id");

setAppInviteOneLinkID

void setAppInviteOneLinkID(string oneLinkId)

User-Invite-API에 사용할 원링크 ID를 설정합니다
사용자 초대를 위해 생성된 링크는 이 원링크를 기본 링크로 사용합니다.

parametertypedescription
oneLinkIdstring사용자 초대 어트리뷰션을 위한 원링크 ID

예:

AppsFlyer.setAppInviteOneLinkID("abcd");

setAdditionalData

void setAdditionalData(Dictionary<string, string> customData)

setAdditionalData API는 SDK 수준에서 Segment, Adobe 및 Urban Airship과 같은 몇몇 외부 파트너 플랫폼과 연동할 때 필요합니다. 이 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)

안드로이드 앱 링크를 지원하는 원링크를 사용하고 이를 제3자 유니버설 링크로 래핑하는 경우, setResolveDeepLinkURLs API를 사용하여 앱을 호출하는 클릭 도메인이 SDK에 의해 확인되어야 하고 기본 원링크를 추출해야 하는 앱스플라이어 SDK에 알릴 수 있습니다. 이렇게 하면 딥링크와 어트리뷰션을 유지하면서 를 원링크제3자 유니버설 링크로 래핑할 수 있습니다. 반드시 SDK 초기화 전에 이 API를 호출해야합니다.

parametertypedescription
urlsparams string[]URL 배열

예:

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

setOneLinkCustomDomain

void setOneLinkCustomDomain(params string[] domains)

광고주는 이 메서드를 사용하여 무의미한 원링크 도메인을 설정할 수 있습니다.

parametertypedescription
domainsparams string[]커스텀 도메인 배열

예:

 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)

앱스플라이어에는 특정 사용자 식별자를 앱스플라이어 분석에서 익명 처리하는 메서드가 있습니다. 이 메서드는 최신 개인 정보 보호 요구 사항을 준수하며 Facebook 데이터 및 개인 정보 보호 정책을 준수합니다. 기본값은 기본적으로 익명화가 수행되지 않는 NO입니다.
SDK를 초기화하는 동안 다음 API를 사용하면, 사용자의 설치, 이벤트, 세션을 명시적으로 익명처리할 수 있습니다.
anonymizeUser를 다시 호출하고 false로 설정하여 익명화를 취소할 수 있습니다.

경고
Anonymizing users SEVERELY impacts your attribution information. Use this option ONLY for regions which legally prevents you from collecting your users' information.

parametertypedescription
shouldAnonymizeUserbool익명화를 수행하는 경우 true

예:

AppsFlyer.anonymizeUser(true);

getAppsFlyerId

string getAppsFlyerId()

앱스플라이어 고유 장치 ID는 앱의 모든 신규 인스톨이 발생할 때마다 발급됩니다. 앱스플라이어의 고유 ID를 얻기 위해서 다음 API를 사용하십시오.

예:

string uid = AppsFlyer.getAppsFlyerId(); 

setMinTimeBetweenSessions

void setMinTimeBetweenSessions(int seconds)

기본적으로 2개 앱을 실행할 때의 간격이 적어도 5초 이상이 되어야 2 개의 별도 세션으로 계산합니다(세션 계산에 대해 알아보기). 하지만, 다음 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);

전환 데이터 리스너를 등록합니다.
개발사가 SDK 수준에서 직접 새로 인스톨할 때마다 사용자 어트리뷰션 데이터에 실시간으로 액세스할 수 있도록 합니다.
이렇게 하면 사용자에게 개인화된 콘텐츠를 제공하거나 특정 인앱 활동으로 보낼 수 있습니다.
앱에 대한 인게이지먼트를 크게 향상시킬 수 있습니다.

IAppsFlyerConversionData 인터페이스를 구현하여 콜백을 가져옵니다.

parametertypedescription
objectNamestringIAppsFlyerConversionData 인터페이스를 포함한 게임 개체

예:

AppsFlyer.getConversionData(gameObject.name);

attributeAndOpenStore

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

다음 API를 이용하여 클릭을 어트리뷰션하고 앱스토어의 앱 페이지를 실행하십시오.

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);

logAdRevenue

void logAdRevenue(AFAdRevenueData adRevenueData, Dictionary<string, string> additionalParameters)

Logs ad revenue data along with additional parameters if provided.

parametertypedescription
adRevenueDataAFAdRevenueDataInstance of AFAdRevenueData containing ad revenue information
additionalParametersDictionary<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);

To attribute an impression use the following API call.
Make sure to use the promoted App ID as it appears within the AppsFlyer dashboard.

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을 빌드합니다. 이 클래스 내 여러 가지 setter 메서드에 따라 링크 클릭 시 정보가 수집됩니다.
참고 - https://support.appsflyer.com/hc/en-us/articles/115004480866-User-invite-attribution-

parametertypedescription
parametersDictionary<string, string>
gameObjectMonoBehaviourIAppsFlyerUserInvite 인터페이스를 포함한 게임 개체

예:

AppsFlyer.generateUserInviteLink(params, this);

setSharingFilterForAllPartners Deprecated

void setSharingFilterForAllPartners()

광고주가 모든 애드 네트워크/연동 파트너에게 데이터를 보내지 않도록 할 때 사용합니다.

예:

AppsFlyer.setSharingFilterForAllPartners();

setSharingFilter Deprecated

void setSharingFilter(params string[] partners)

광고주가 이 메서드를 이용하여 일부(하나 혹은 복수의) 애드 네트워크/연동 파트너를 데이터 공유 대상에서 제외되도록 설정할 수 있습니다.

parametertypedescription
partnersparams string[] partners데이터 가져오기 기능을 제외할 파트너

예:

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

setSharingFilterForPartners

void setSharingFilterForPartners(params string[] partners)

광고주가 이 메서드를 이용하여 일부(하나 혹은 복수의) 애드 네트워크/연동 파트너를 데이터 공유 대상에서 제외되도록 설정할 수 있습니다.

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);

안드로이드 전용 API

updateServerUninstallToken

void updateServerUninstallToken(string token)

앱 삭제 측정을 위해 Firebase 기기 토큰을 수동으로 전달합니다.

parametertypedescription
tokenstringFirebase FCM 토큰

예:

#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 및 GPS가 필요한 특정 앱에서), 기본적으로 SDK가 IMEI 및 안드로이드 ID를 수집하지 않습니다.
이 API를 사용해 앱스플라이어에 IMEI를 발송합니다.

parametertypedescription
imeistring기기 IMEI

예:

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

setAndroidIdData

void setAndroidIdData(string androidId)

OS 버전이 KitKat (4.4) 이상이고 기기가 Google Play Services를 포함하고 있으면 (SDK 버전 4.8.8 및 GPS가 필요한 특정 앱에서), 기본적으로 SDK가 IMEI 및 안드로이드 ID를 수집하지 않습니다.
이 API를 사용해 앱스플라이어에 안드로이드 ID를 발송합니다.

parametertypedescription
androidIdstring기기의 안드로이드 ID

예:

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

waitForCustomerUserId

void waitForCustomerUserId(bool wait)

customerUserID가 설정될 때까지 SDK 초기화를 지연시킬 수 있습니다.
이 기능은 customerUserID를 얻기 전까지 SDK가 동작을 시작할 수 없도록 합니다. 이 API를 사용하면 customerUserID가 제공될 때까지 모든 인앱 이벤트 및 기타 SDK API 호출이 무시됩니다.

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를 사용하여 SDK에 관련 고객 사용자 ID를 제공하고 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)

안드로이드 ID 모음에서 옵트아웃합니다.
앱이 Google Play 서비스를 사용하지 않는 경우 안드로이드 ID는 SDK로 수집합니다.
하지만, Google Play Services를 사용하는 앱은 안드로이드 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()

제조사 사전 설치에 대한 부울 지표입니다.

예:

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

        }
#endif

handlePushNotifications

void handlePushNotifications()
handlePushNotifications API가 호출되면 푸시 알림이 기록됩니다.

예:

AppsFlyer.handlePushNotifications();

getAttributionId

string getAttributionId()

Facebook 어트리뷰션 ID를 가져옵니다(있는 경우).

예:

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

validateAndSendInAppPurchase-beta

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

API for server verification of in-app purchases.
An af_purchase event with the relevant values will be automatically sent if the validation is successful.

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 for server verification of in-app purchases.
An af_purchase event with the relevant values will be automatically sent if the validation is successful.

parametertypedescription
publicKeystringGoogle Play Console에서 얻은 라이선스 키
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는 Apple를 수집 advertisingIdentifier if the AdSupport.framework SDK에 포함되어 있습니다.
다음 속성을 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로 설정합니다(예: "내 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)

인앱 구매 영수증 유효성 검증 Apple 환경(생산 또는 샌드박스)입니다. 기본 값은 false입니다.

parametertypedescription
useReceiptValidationSandboxbool인앱 구매가 샌드박스로 완료된 경우 true

예:

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

setUseUninstallSandbox

void setUseUninstallSandbox(bool useUninstallSandbox)

Apple 환경(생산 또는 샌드박스)에서 앱 삭제를 테스트하려면 이 플래그를 설정합니다. 기본 값은 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)

앱 삭제 등록 - 원격 알림을 등록하고 앱스프라이어에게 푸시 기기 토큰을 제공해야 합니다.

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
annotationstringAppDelegate로 전달할 주석

예:

#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
isDisabledboolSKAdNetwork를 비활성화하려면 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에는 원링크, 딥링크에 대한 정보가 포함되어 있습니다.

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)

원링크 URL을 생성하기 위한 콜백 성공.

parametertypedescription
linkstring생성된 링크

예:

   public void onInviteLinkGenerated(string link)
    {

    }

onInviteLinkGeneratedFailure

public void onInviteLinkGeneratedFailure(string error)

원링크 URL을 생성하기 위한 콜백 오류

parametertypedescription
errorstring오류를 설명하는 문자열

예:

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

onOpenStoreLinkGenerated

public void onOpenStoreLinkGenerated(string link)

(iOS 전용) iOS에서는 Storekit 컴포넌트를 사용하여
해당 앱에 맞는 앱스토어를 열 수 있습니다.

자세한 내용은 여기를 참조

parametertypedescription
attributionDatastring반환된 딥링크 데이터의 JSON 문자열

예:

    public void onOpenStoreLinkGenerated(string link)
    {

    }

IAppsFlyerValidateReceipt

didFinishValidateReceipt

public void didFinishValidateReceipt(string result)

validateAndSendInAppPurchase API에 대한 콜백 성공.

안드로이드의 경우: 콜백은 "성공 검증"을 반환합니다.

iOS의 경우: 콜백은 애플 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"
40Network error: Error description comes from 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"
40Network error: Error description comes from 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

통합 딥링크 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
    };