Referência da API

A lista de métodos disponíveis para este plugin está descrita abaixo.


API Android, iOS e Windows

initSDK

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

Inicialize o SDK da AppsFlyer com o devKey e o appID.
A chave do desenvolvedor é necessária para todos os aplicativos e o appID é necessário apenas para iOS.
Se seu aplicativo for para Android, passe apenas null para o appID.

parametertypedescription
dev_keystringChave do desenvolvedor da AppsFlyer, que pode ser acessada em sua conta da AppsFlyer em "Configurações do aplicativo" no painel.
app_idstringO ID Apple do seu aplicativo.
gameObject (opcional)MonoBehaviourO objeto do jogo que contém a interface IAppsFlyerConversionData.

Exemplo:

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

Observação: você só precisa implementar o SDK com deep links se estiver usando a interface IAppsFlyerConversionData .


startSDK

void startSDK()

Depois que essa API for chamada, o SDK será iniciado, as sessões serão enviadas imediatamente e todas as transições de primeiro plano em segundo plano registrarão uma sessão.

Exemplo:

 AppsFlyer.startSDK();

API Android e iOS

stopSDK

void stopSDK(bool isSDKStopped)

Em alguns casos extremos, convém encerrar todas as funções do SDK devido à conformidade legal e de privacidade. Isso pode ser obtido com a API stopSDK. Depois que essa API é chamada, nosso SDK não se comunica mais com nossos servidores e deixa de funcionar.

Há vários cenários diferentes para a exclusão (opt-out) de usuários. É altamente recomendável seguir as instruções exatas para o cenário, que são relevantes para o seu aplicativo.

Em qualquer evento, o SDK pode ser reativado chamando a mesma API passando o valor "false".

Importante:
Não chame startSDK() se stopSDK() estiver definido como verdadeiro.

Para reiniciar as funções do SDK novamente, use a seguinte API:

AppsFlyer.stopSDK(false);

Aviso
Use a API stopSDK apenas nos casos em que deseja ignorar totalmente as funções do SDK do usuário. O uso dessa API afeta SEVERAMENTE sua atribuição, coleta de dados e mecanismo de deep linking.

parametertypedescription
isSDKStoppedboolVerdadeiro se o SDK for interrompido (o valor padrão é falso).

Exemplo:

AppsFlyer.stopSDK(true);

isSDKStopped

bool isSDKStopped()

A API stopSDK(booleana) foi definida como true.

Exemplo:

if (!AppsFlyer.isSDKStopped())
{
  
}

getSdkVersion

string getSdkVersion()

Obtenha a versão do SDK da AppsFlyer usada no aplicativo.

Exemplo:

string version = AppsFlyer.getSdkVersion();

setIsDebug

void setIsDebug(bool shouldEnable)

Habilita logs de depuração para o SDK da AppsFlyer.

Aviso
Apenas definido como verdadeiro em desenvolvimento/depuração.

parametertypedescription
shouldEnableboolVerdadeiro se o modo de depuração estiver ativado (o padrão é falso)

Exemplo:

AppsFlyer.setIsDebug(true);

addPushNotificationDeepLinkPath

void addPushNotificationDeepLinkPath(params string[] paths)

Adiciona uma matriz de chaves, que são usadas para compor o caminho da chave para resolver o deep link a partir do payload da notificação push.

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

Exemplo:

Exemplo de uso
Configuração básica:

AppsFlyer.addPushNotificationDeepLinkPath("af_push_link")

Esta chamada corresponde à seguinte estrutura de payload:

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

ֿAdvanced configuration:

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

Esta chamada corresponde à seguinte estrutura de payload:

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

setCustomerUserId

void setCustomerUserId(string id)

Definir seu próprio ID personalizado permite que você faça referência cruzada de seu próprio ID exclusivo com o ID de usuário da AppsFlyer e os IDs de outros dispositivos. Esse ID está disponível nos relatórios de CSV da AppsFlyer junto com APIs de postbacks para referência cruzada com seus IDs internos.

parametertypedescription
idstringID de usuário personalizado

Exemplo:

AppsFlyer.setCustomerUserId("custom_user_id");

setAppInviteOneLinkID

void setAppInviteOneLinkID(string oneLinkId)

Defina o ID do OneLink que deve ser usado para User-Invite-API
O link gerado para o convite do usuário usará este OneLink como o link base.

parametertypedescription
oneLinkIdstringOneLink ID para atribuição de convite de usuário

Exemplo:

AppsFlyer.setAppInviteOneLinkID("abcd");

setAdditionalData

void setAdditionalData(Dictionary<string, string> customData)

A API setAdditionalData é necessária para integrar no nível do SDK com várias plataformas de parceiros externos, incluindo Segment, Adobe e Urban Airship. Use esta API somente se o artigo de integração da plataforma declarar especificamente que a API setAdditionalData é necessária.

parametertypedescription
customDataDictionary<string, string>dados adicionais

Exemplo:

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

setResolveDeepLinkURLs

void setResolveDeepLinkURLs(params string[] urls)

Se você estiver usando OneLinks que oferecem suporte a Android App Links e agrupando-os com um link universal de terceiros, você pode usar a API setResolveDeepLinkURLs para notificar o SDK da AppsFlyer quais domínios de clique que invocam o aplicativo devem ser resolvidos pelo SDK e ter o OneLink subjacente extraído deles. Isso permitirá que você mantenha o deep link e atribuição ao envolver o OneLink com o link universal de um terceiro. Certifique-se de chamar essa API antes da inicialização do SDK.

parametertypedescription
urlsparams string[]matriz de URLs

Exemplo:

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

setOneLinkCustomDomain

void setOneLinkCustomDomain(params string[] domains)

Os anunciantes podem usar esse método para definir domínios do OneLink personalizados.

parametertypedescription
domainsparams string[]matriz de domínios personalizados

Exemplo:

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

setCurrencyCode

void setCurrencyCode(string currencyCode)

Definindo o código de moeda local do usuário para compras no aplicativo.
O código da moeda deve ser um código ISO 4217 de 3 caracteres. (o padrão é USD). Você pode definir o código de moeda para todos os eventos chamando o seguinte método.

parametertypedescription
currencyCodestringCódigo ISO 4217 de 3 caracteres. (o padrão é USD)

Exemplo:

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

Exemplo:

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

Exemplo:

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

Exemplo:

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

recordLocation

void recordLocation(double latitude, double longitude)

Registre manualmente a localização do usuário.

parametertypedescription
latitudedoublelatitude do usuário
longitudedoublelongitude do usuário

Exemplo:

AppsFlyer.recordLocation(40.7128, 74.0060);

anonymizeUser

void anonymizeUser(bool shouldAnonymizeUser)

A AppsFlyer fornece um método para anonimizar identificadores de usuários específicos em sua análise. Este método está em conformidade com os requisitos de privacidade mais recentes e com as políticas de dados e privacidade do Facebook. O padrão é NÃO, o que significa que nenhuma anonimização é executada por padrão.
Use esta API durante a inicialização do SDK para anonimizar explicitamente as instalações, eventos e sessões de um usuário.
Você pode cancelar o anonimato chamando anonymizeUser novamente, definido como false.

Aviso
A anonimização de usuários afeta GRAVEMENTE suas informações de atribuição. Use essa opção APENAS em regiões que legalmente impedem você de coletar informações de seus usuários.

parametertypedescription
shouldAnonymizeUserboolverdadeiro para realizar a anonimização

Exemplo:

AppsFlyer.anonymizeUser(true);

getAppsFlyerId

string getAppsFlyerId()

O ID de dispositivo exclusivo da AppsFlyer é criado para cada nova instalação de um aplicativo. Use a API a seguir para obter o ID exclusivo da AppsFlyer.

Exemplo:

string uid = AppsFlyer.getAppsFlyerId(); 

setMinTimeBetweenSessions

void setMinTimeBetweenSessions(int seconds)

Por padrão, pelo menos 5 segundos devem decorrer entre 2 inicializações de aplicativos para contar como 2 sessões separadas (mais sobre a contagem de sessões). No entanto, você pode usar a API a seguir para definir seu valor personalizado para o tempo mínimo necessário entre as sessões.

Observação: definir um valor alto para o tempo personalizado entre inicializações pode afetar gravemente as APIs que dependem de dados de sessões, como deep linking.

parametertypedescription
secondsinttempo entre as sessões (o padrão é 5 segundos)

Exemplo:

AppsFlyer.setMinTimeBetweenSessions(4);

setHost

void setHost(string hostPrefixName, string hostName)

Defina um host personalizado.

parametertypedescription
hostPrefixNamestring
hostNamestring

Exemplo:

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

setUserEmails

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

Defina os e-mails do usuário e criptografe-os.

cryptMethod Encryption methods:
EmailCryptType.EmailCryptTypeSHA256
EmailCryptType.EmailCryptTypeNone

parametertypedescription
cryptMethodEmailCryptTypenenhum, ou sha256
emailsparams string[]lista de e-mails

Exemplo:

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

setPhoneNumber

void setPhoneNumber(string phoneNumber)

Defina o número de telefone do usuário.

parametertypedescription
phoneNumberstring

Exemplo:

AppsFlyer.setPhoneNumber("4166358181");

getConversionData

void getConversionData(string objectName);

Registre um ouvinte de dados de conversão.
Permite que o desenvolvedor acesse os dados de atribuição do usuário em tempo real para cada nova instalação, diretamente do nível do SDK.
Ao fazer isso, você pode atender os usuários com conteúdo personalizado ou encaminhá-los para atividades específicas dentro do aplicativo,
o que pode aumentar muito o engajamento deles com seu aplicativo.

Obtenha os retornos de chamada implementando a interface IAppsFlyerConversionData.

parametertypedescription
objectNamestringobjeto de jogo com a interface IAppsFlyerConversionData

Exemplo:

AppsFlyer.getConversionData(gameObject.name);

attributeAndOpenStore

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

Use a API a seguir para atribuir o clique e iniciar a página de aplicativos da loja de aplicativos.

Obtenha os retornos de chamada implementando a interface IAppsFlyerUserInvite.

parametertypedescription
appIDstring
campaignstring
userParamsDictionary<string, string>
gameObjectMonoBehaviourobjeto de jogo com a interface IAppsFlyerUserInvite

Exemplo:

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

Para atribuir uma impressão, use a seguinte chamada de API.
Certifique-se de usar o ID do aplicativo promovido da maneira como aparece no painel da AppsFlyer.

parametertypedescription
appIDstringApp ID
campaignstringcampaign
paramsDictionary<string, string>parâmetros adicionais

Exemplo:

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)

A classe LinkGenerator constrói o URL de convite de acordo com vários métodos setter que permitem passar informações adicionais no clique.
Consulte - https://support.appsflyer.com/hc/en-us/articles/115004480866-User-invite-attribution-

parametertypedescription
parametersDictionary<string, string>
gameObjectMonoBehaviourobjeto de jogo com a interface IAppsFlyerUserInvite

Exemplo:

AppsFlyer.generateUserInviteLink(params, this);

setSharingFilterForAllPartners Deprecated

void setSharingFilterForAllPartners()

Usado pelos anunciantes para impedir que todas as redes/parceiros integrados obtenham dados.

Exemplo:

AppsFlyer.setSharingFilterForAllPartners();

setSharingFilter Deprecated

void setSharingFilter(params string[] partners)

Usado por anunciantes para definir algumas (uma ou mais) redes/parceiros integrados para excluir da obtenção de dados.

parametertypedescription
partnersparams string[] partnersparceiros para excluir da obtenção de dados

Exemplo:

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

setSharingFilterForPartners

void setSharingFilterForPartners(params string[] partners)

Usado por anunciantes para definir algumas (uma ou mais) redes/parceiros integrados para excluir da obtenção de dados.

parametertypedescription
partnersparams string[] partnersparceiros para excluir da obtenção de dados

Exemplo:

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)

Permite o envio de dados personalizados para fins de integração de parceiros.

parametertypedescription
partnerIDstringID do parceiro (geralmente com o sufixo "_int").
partnerInfoparams string[]Os dados do cliente dependem da configuração de integração com o parceiro específico.

Exemplo:

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

API somente para Android

updateServerUninstallToken

void updateServerUninstallToken(string token)

Transmita manualmente o token do dispositivo Firebase para medição de desinstalação.

parametertypedescription
tokenstringToken Firebase FCM

Exemplo:

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

setImeiData

void setImeiData(string imei)

Por padrão, o IMEI e o Android ID não são coletados pelo SDK se a versão do sistema operacional for superior a KitKat (4.4)
e o dispositivo contém o Google Play Services (nas versões do SDK 4.8.8 e abaixo do GPS necessário para o aplicativo específico).
Use esta API para enviar IMEI explicitamente para a AppsFlyer.

parametertypedescription
imeistringIMEI do dispositivo

Exemplo:

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

setAndroidIdData

void setAndroidIdData(string androidId)

Por padrão, o IMEI e o ID do Android não são coletados pelo SDK se a versão do sistema operacional for superior a KitKat (4.4) e o dispositivo contém o Google Play Services (nas versões SDK 4.8.8 e abaixo do GPS do aplicativo específico necessário).
Use esta API para enviar explicitamente a ID do Android para a AppsFlyer.

parametertypedescription
androidIdstringID do Android do dispositivo

Exemplo:

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

waitForCustomerUserId

void waitForCustomerUserId(bool wait)

É possível adiar a inicialização do SDK até que o customerUserID esteja definido. Esse recurso garante que o SDK não comece a funcionar até que o customerUserID seja fornecido. Se essa API for usada, todos os eventos in-app e quaisquer outras chamadas de API do SDK serão descartados, até que o customerUserID seja fornecido.

parametertypedescription
waitboolVerdadeiro se você deseja que o SDK aguarde customerUserID

Exemplo:

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

setCustomerIdAndStartSDK

void setCustomerIdAndStartSDK(string id)

⚠️

Before calling this method, the method waitForCustomerUserId must be called

Use esta API para fornecer ao SDK o ID de usuário do cliente relevante e acionar o SDK para iniciar sua atividade normal.

parametertypedescription
idstringID do cliente para o cliente.

Exemplo:

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

getOutOfStore

string getOutOfStore()

Obtenha o valor AF_STORE atual.

Exemplo:

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

setOutOfStore

void setOutOfStore(string sourceName)

Defina manualmente o valor AF_STORE.

parametertypedescription
sourceNamestring

Exemplo:

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

setCollectAndroidID

void setCollectAndroidID(bool isCollect)

Opção por não participar da coleção da ID do Android. Se o aplicativo NÃO tiver o Google Play Services, o ID do Android será coletado pelo SDK. No entanto, os aplicativos com o Google Play Services devem evitar a coleta de ID do Android, pois isso viola a política do Google Play.

parametertypedescription
isCollectbool

Exemplo:

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

setCollectIMEI

void setCollectIMEI(bool isCollect)

Optar por não participar da coleção de IMEI. Se o aplicativo NÃO contiver o Google Play Services, o IMEI do dispositivo será coletado pelo SDK.
No entanto, aplicativos com serviços do Google Play devem evitar a coleta de IMEI, pois isso viola a política do Google Play.

parametertypedescription
isCollectbool

Exemplo:

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

setIsUpdate

void setIsUpdate(bool isUpdate)

Defina manualmente que o aplicativo foi atualizado.

parametertypedescription
isUpdateboolverdadeiro se o aplicativo foi atualizado

Exemplo:

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

setPreinstallAttribution

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

Especifique o nome do fabricante ou fonte de mídia ao qual a pré-instalação é atribuída.

parametertypedescription
mediaSourcestringNome da fonte do fabricante ou da mídia para atribuição de pré-instalação.
campaignstringNome da campanha para atribuição de pré-instalação.
siteIdstringID do site para atribuição de pré-instalação.

Exemplo:

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

isPreInstalledApp

bool isPreInstalledApp()

Indicador booleano para pré-instalação pelo fabricante.

Exemplo:

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

        }
#endif

handlePushNotifications

void handlePushNotifications()
Quando a API handlePushNotifications for chamada, as notificações push serão registradas.

Exemplo:

AppsFlyer.handlePushNotifications();

getAttributionId

string getAttributionId()

Obtenha a ID de atribuição do Facebook, se houver.

Exemplo:

#if UNITY_ANDROID && !UNITY_EDITOR
        string attributionId = AppsFlyer.getAttributionId();
#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
publicKeystringChave de licença obtida no Google Play Console.
signaturestringdata.INAPP_DATA_SIGNATURE.
purchaseDatastringdata.INAPP_PURCHASE_DATA
pricestringPreço de compra
currencystringID do site para atribuição de pré-instalação.
additionalParametersDictionary<string, string>Parâmetros a serem enviados com a compra.
gameObjectMonoBehaviourObjeto de jogo para os callbacks a serem enviados

Exemplo:

#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
isCollectboolverdadeiro para permitir a coleta de oaid

Exemplo:

#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
disableboolverdadeiro para desativar

Exemplo:

#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
disableboolverdadeiro para optar por não participar

Exemplo:

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

API apenas para iOS

setDisableCollectAppleAdSupport

void setDisableCollectAppleAdSupport(bool disable)

O SDK da AppsFlyer coleta o advertisingIdentifier if the AdSupport.framework estiver incluído no SDK.
Você pode desabilitar esse comportamento definindo a propriedade a seguir como verdadeiro.

parametertypedescription
disablebool

Exemplo:

#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

Exemplo:

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

Defina este sinalizador como verdadeiro, para coletar o nome do dispositivo atual (ex.: "Meu iPhone"). O valor padrão é falso.

parametertypedescription
shouldCollectDeviceNamebool

Exemplo:

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

setDisableCollectIAd

void setDisableCollectIAd(bool disableCollectIAd)

Opte por não participar das atribuições do Apple Search Ads.

parametertypedescription
disableCollectIAdbool

Exemplo:

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

setUseReceiptValidationSandbox

void setUseReceiptValidationSandbox(bool useReceiptValidationSandbox)

Validação de recibo de compra em aplicativo Ambiente Apple (produção ou sandbox). O valor padrão é false.

parametertypedescription
useReceiptValidationSandboxboolverdadeiro se a compra no aplicativo for feita com sandbox

Exemplo:

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

setUseUninstallSandbox

void setUseUninstallSandbox(bool useUninstallSandbox)

Defina esse sinalizador para testar a desinstalação no ambiente Apple (produção ou sandbox). O valor padrão é false.

parametertypedescription
useUninstallSandboxboolverdadeiro se você estiver usando um certificado APN

Exemplo:

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

validateAndSendInAppPurchase

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

Para enviar e validar compras in-app você pode chamar este método do método processPurchase.

parametertypedescription
productIdentifierstringO identificador do produto.
pricestringO preço do produto.
currencystringA moeda do produto.
tranactionIdstringO ID da transação de compra.
additionalParametersDictionary<string, string>O parâmetro adicional, que você deseja receber nos relatórios brutos.
gameObjectMonoBehaviouro objeto do jogo para os callbacks

Exemplo:

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

registerUninstall

void registerUninstall(byte[] deviceToken)

Registre a desinstalação - você deve se registrar para notificação remota e fornecer o token do dispositivo push à AppsFlyer.

parametertypedescription
deviceTokenbyte[]Token de APN

Exemplo:

    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
urlstringO URL a ser passada para seu AppDelegate
sourceApplicationstringO sourceApplication a ser passado para seu AppDelegate
annotationstringA anotação a ser passada para seu representante do aplicativo

Exemplo:

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

waitForATTUserAuthorizationWithTimeoutInterval

void waitForATTUserAuthorizationWithTimeoutInterval(int timeoutInterval)

Veja aqui para mais informações.

parametertypedescription
timeoutIntervalintTempo de espera pelo idfa

Exemplo:

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

disableSKAdNetwork

bools disableSKAdNetwork(bool isDisabled)

parametertypedescription
isDisabledboolVerdadeiro para desabilitar SKAdNetwork

Exemplo:

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

setLanguage

setCurrentDeviceLanguage(string language)

parametertypedescription
languageStringO idioma a definir

Exemplo:

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

disableIDFVCollection

disableIDFVCollection(bool isDisabled)

parametertypedescription
isDisabledboolTrue to disable IDFV collection

Exemplo:

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

IAppsFlyerConversionData

onConversionDataSuccess

public void onConversionDataSuccess(string conversionData)

ConversionData contém informações sobre instalação.
Orgânico/não orgânico, etc. Veja aqui para mais informações.

parametertypedescription
conversionDatastringString JSON dos dados de conversão retornados

Exemplo:

   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
errorstringUma string descrevendo o erro

Exemplo:

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

onAppOpenAttribution

public void onAppOpenAttribution(string attributionData)

attributionData contém informações sobre OneLink, deeplink.

parametertypedescription
attributionDatastringString JSON dos dados do deep link retornados

Exemplo:

    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)

Quaisquer erros ocorridos durante a solicitação de atribuição.

parametertypedescription
errorstringstring descrevendo o erro

Exemplo:

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

IAppsFlyerUserInvite

onInviteLinkGenerated

public void onInviteLinkGenerated(string link)

O callback de sucesso para gerar URLs OneLink.

parametertypedescription
linkstringlink gerado

Exemplo:

   public void onInviteLinkGenerated(string link)
    {

    }

onInviteLinkGeneratedFailure

public void onInviteLinkGeneratedFailure(string error)

Callback de erro para gerar URLs OneLink

parametertypedescription
errorstringUma string descrevendo o erro

Exemplo:

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

onOpenStoreLinkGenerated

public void onOpenStoreLinkGenerated(string link)

(somente ios) O iOS permite que você utilize o componente StoreKit para abrir
na App Store enquanto permanece no contexto do seu aplicativo.

Mais detalhes aqui

parametertypedescription
attributionDatastringString JSON dos dados do deep link retornados

Exemplo:

    public void onOpenStoreLinkGenerated(string link)
    {

    }

IAppsFlyerValidateReceipt

didFinishValidateReceipt

public void didFinishValidateReceipt(string result)

O callback bem-sucedido para a API validateAndSendInAppPurchase.

Para Android: o callback retornará "Validar sucesso".

Para iOS: o callback retornará uma string JSON da API verifyReceipt da Apple.

parametertypedescription
resultstringvalidar resultado

Exemplo:

   public void didFinishValidateReceipt(string link)
    {

    }

didFinishValidateReceiptWithError

public void didFinishValidateReceiptWithError(string error)

Callback de erro para validação de recibos.

parametertypedescription
errorstringUma string descrevendo o erro

Exemplo:

    public void didFinishValidateReceiptWithError(string error)
    {
      
    }

Painel de Eventos

onRequestResponse

public static event EventHandler OnRequestResponse

Callback de sessões

statusCodeerrorDescription
200null
10"Event timeout. Check 'minTimeBetweenSessions' param" ("Tempo limite do evento. Verifique parâmetro 'minTimeBetweenSessions'")
11"Skipping event because 'isStopTracking' enabled" ("Ignorando evento porque 'IsStopTracking' está ativado")
40Network error: Error description comes from Android (Erro de rede: descrição do erro vem do Android)
41"No dev key" ("Sem chave do desenvolvedor")
50"Falha no código de status" + código de resposta real do servidor

Exemplo:

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

onInAppResponse

public static event EventHandler OnInAppResponse

Callback para eventos in-app

statusCodeerrorDescription
200null
10"Event timeout. Check 'minTimeBetweenSessions' param" ("Tempo limite do evento. Verifique parâmetro 'minTimeBetweenSessions'")
11"Skipping event because 'isStopTracking' enabled" ("Ignorando evento porque 'IsStopTracking' está ativado")
40Network error: Error description comes from Android (Erro de rede: descrição do erro vem do Android)
41"No dev key" ("Sem chave do desenvolvedor")
50"Falha no código de status" + código de resposta real do servidor

Exemplo:


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


onDeepLinkReceived

public static event EventHandler OnDeepLinkReceived

Callback para a API Unified Deeplink

Exemplo:


    // 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
    };