Guía de integración del plugin de Unity V6: referencia de API

De un vistazo: Descripciones técnicas de las clases y los métodos incluidos en el SDK de AppsFlyer. 

 Lectura relacionada:

Para obtener una imagen completa de la integración del plugin de Unity con tus aplicaciones, asegúrate de leer estos artículos:

API de iOS y Android

initSDK

Descripción

Inicia el plugin con la clave de desarrollador y el ID de aplicación. Se requiere la clave de desarrollador para todas las aplicaciones. El ID de aplicación es necesaria solo para iOS. Si tu aplicación es solo para Android, pasa el valor nulo para el ID de aplicación. El objeto de juego contiene la interfaz IAppsFlyerConversionData.

Firma de método

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

Ejemplo

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

startSDK

Descripción

Una vez que se invoca esta API, se iniciará el SDK, se enviarán inmediatamente las sesiones y todas las transiciones de fondo en primer plano registrarán una sesión.

Firma de método

void startSDK()

Ejemplo

AppsFlyer.startSDK();

sendEvent

Descripción

El registro de eventos in-app se realiza llamando a sendEvent con el nombre del evento y los parámetros de valor.

Firma de método

void sendEvent(string eventName, Dictionary<string, string> eventValues)

Ejemplo

Dictionary<string, string> 
            eventValues = new Dictionary<string, string>();
            eventValues.Add(AFInAppEvents.CURRENCY, "USD");
            eventValues.Add(AFInAppEvents.REVENUE, "0.99");
            eventValues.Add("af_quantity", "1");
            AppsFlyer.sendEvent(AFInAppEvents.PURCHASE, eventValues);

stopSDK

Descripción

En algunos casos extremos, tal vez quieras desactivar todas las funciones del SDK para el cumplimiento con disposiciones reglamentarias o asociadas a la privacidad. Para hacerlo, usa la API de stopSDK. Una vez invocada esta API, el SDK ya no se comunicará con nuestros servidores y dejará de funcionar.

Firma de método

void stopSDK(bool isSDKStopped)

Ejemplo

AppsFlyer.stopSDK(true);

isSDKStopped

Descripción

La API de stopSDK (booleano) se configura como true.

Firma de método

bool isSDKStopped()

Ejemplo

if (!AppsFlyer.isSDKStopped())
{

}

getSdkVersion

Descripción

Obtener la versión del SDK de AppsFlyer

Firma de método

string getSdkVersion()

Ejemplo

string version = AppsFlyer.getSdkVersion();

setIsDebug

Descripción

Activa los registros de depuración

Firma de método

void setIsDebug(bool shouldEnable)

Ejemplo

AppsFlyer.setIsDebug(true);

Establecer ID de Usuario de Cliente

Descripción

Configura el ID de usuario de cliente (CUID). 

Firma de método

void setCustomerUserId(string id)

Ejemplo

AppsFlyer.setCustomerUserId("custom_user_id");

setAppInviteOneLink

Descripción

Configura el ID de plantilla de OneLink que se usa para crear enlaces de atribución personalizados para invitaciones de usuarios.

Firma de método

setAppInviteOneLinkID(string oneLinkId)

Ejemplo

AppsFlyer.setAppInviteOneLinkID("abcd");

setAdditionalData

Descripción

Agrega datos adicionales para enviarlos a plataformas de partners externos.

Firma de método

setAdditionalData(Dictionary<string, string> customData)

Ejemplo

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

setResolveDeepLinkURLs

Descripción

Resuelve OneLink para dominios de clics. Para más información, consulta la sección sobre cómo resolver las URL de enlaces profundos encapsulados.

Firma de método

setResolveDeepLinkURLs(params string[] urls)

Ejemplo

AppsFlyer.setResolveDeepLinkURLs("example.com", "click.example.com");

setOneLinkCustomDomain

Descripción

Los anunciantes pueden usar este método para configurar dominios acortados de OneLink.

Firma de método

void setOneLinkCustomDomain(params string[] domains)

Ejemplo

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

setcurrencyCode

Descripción

Úsala para eventos con ingresos. Acepta códigos de divisa ISO.

Firma de método

public void setCurrencyCode(String currencyCode);

Ejemplo

AppsFlyer.setCurrencyCode("GBP");

recordLocation

Descripción

Registra manualmente la ubicación del usuario

Firma de método

void recordLocation(double latitude, double longitude)

Ejemplo

AppsFlyer.recordLocation(40.7128, 74.0060);

anonymizeUser

Descripción

Usa esta API durante la inicialización del SDK para anonimizar explícitamente las instalaciones, los eventos y las sesiones del usuario. Para dejar de anonimizar, llama de nuevo a AnonymizeUser, y configúralo en false.

Firma de método

void anonymizeUser(bool shouldAnonymizeUser)

Ejemplo

AppsFlyer.anonymizeUser(true);

getAppsFlyerId

Descripción

Para obtener el ID único de AppsFlyer para una instalación nueva.

Firma de método

string getAppsFlyerId()

Ejemplo

string uid = AppsFlyer.getAppsFlyerId();

setMinTimeBetweenSessions

Descripción

De manera predeterminada, deben pasar por lo menos 5 segundos entre dos instancias de inicio de la aplicación para que cuenten como sesiones separadas. Configura un valor personalizado para el tiempo mínimo requerido entre sesiones.

Firma de método

void setMinTimeBetweenSessions(int seconds)

Ejemplo

AppsFlyer.setMinTimeBetweenSessions(4);

setUserEmails

Descripción

Configura los correos electrónicos de los usuarios y los encripta.

Firma de método

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

Ejemplo

AppsFlyer.setUserEmails(EmailCryptType.EmailCryptTypeSHA256, "test1@test1.com", "test2@test2.com");

setHost

Descripción

Establece un host personalizado

Firma de método

void setHost(string hostPrefixName, string hostName)

Ejemplo

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

getConversionData

Descripción

Registrar un agente de escucha de conversión de datos te permite acceder a los datos de atribución del usuario en tiempo real por cada instalación nueva, directamente desde el nivel del SDK. Al hacer esto, puedes ofrecer a los usuarios contenido personalizado o enviarlos a actividades específicas dentro de la aplicación, lo que puede mejorar enormemente su engagement con tu aplicación.

Firma de método

void getConversionData(string objectName);

Ejemplo

AppsFlyer.getConversionData(gameObject.name);

attributeAndOpenStore

Descripción

Para atribuir el clic e iniciar la página de la aplicación de la tienda de aplicaciones.

Firma de método

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

Ejemplo


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

Descripción

Para atribuir una impresión, usa la siguiente llamada a la API. Asegúrate de usar el ID de aplicación promocionado tal y como aparece en el panel de control de AppsFlyer.

Firma de método

void recordCrossPromoteImpression(string appID, string campaign);

Ejemplo

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

generateUserInviteLink

Descripción

La clase LinkGenerator crea la URL de invitación de acuerdo con varios métodos del setter, lo que permite transmitir información adicional al hacer clic.

Firma de método

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

Ejemplo

AppsFlyer.generateUserInviteLink(params, this);

onAppOpenAttribution

Descripción

Obtén datos de enlaces profundos cuando se abre una aplicación a través de un enlace profundo.

Firma de método

public void onAppOpenAttribution(string validateResult)

Ejemplo

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

onAppOpenAttributionFailure

Descripción

Obtiene errores al recibir datos de enlaces profundos.

Firma de método

public void onAppOpenAttributionFailure (string error)

Ejemplo

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

onConversionDataSuccess

Descripción

Método utilizado para obtener datos de conversión. Útil para enlaces profundos diferidos. Más información.

  • A partir del SDK v5:onConversionDataSuccess
  • Antes del SDK v5: onConversionDataReceived 

Firma de método

public void onConversionDataSuccess(string conversionData)

Ejemplo

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

onConversionDataFail

Descripción

Maneja errores cuando no se obtienen los datos de conversión de las instalaciones.

Firma de método

public void onConversionDataFail(string error)

Ejemplo

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

onInviteLinkGenerated

Descripción

Devolución de llamada de "éxito" para la generación de URL de OneLink.

Firma de método

public void onInviteLinkGenerated(string link)

Ejemplo

public void onInviteLinkGenerated(string link)
            {
            }

onInviteLinkGeneratedFailure

Descripción

Devolución de llamada de "error" para la generación de URL de OneLink.

Firma de método

public void onInviteLinkGeneratedFailure(string error)

Ejemplo

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

didFinishValidateReceipt

Descripción

Devolución de llamada para la API validateAndSendInAppPurchase.

Para Android: Devoluciones de llamadas devuelven "Validar éxito".
Para iOS: Devoluciones de llamadas devuelven una secuencia JSON de la API de Apple verifyReceipt.

Firma de método

public void didFinishValidateReceipt(string result)

Ejemplo

public void didFinishValidateReceipt(string result)
            {
            }

didFinishValidateReceiptWithError

Descripción

Devolución de llamada de error para validar los recibos.

Firma de método

public void didFinishValidateReceiptWithError(string error)

Ejemplo

public void didFinishValidateReceiptWithError(string error)
            {
            }

setPhoneNumber

Descripción

Se utiliza para configurar el número de teléfono del usuario.

Firma de método

void setPhoneNumber(string phoneNumber)

Ejemplo

AppsFlyer.setPhoneNumber("4166358181");

setSharingFilterForAllPartners

Descripción

Utilizado por los anunciantes para excluir a todas las redes y partners integrados de la obtención de datos. Aprender más

Firma de método

void setSharingFilterForAllPartners()

Ejemplo

AppsFlyer.setSharingFilterForAllPartners();

setSharingFilter

Descripción

Utilizado por los anunciantes para configurar algunas (una o más) redes/partners integrados para excluir de la obtención de datos.Aprender más

Firma de método

void setSharingFilter(params string[] partners)

Ejemplo

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

API de Android

updateServerUninstallToken

Descripción

Pasar manualmente el Token del dispositivo de Firebase para la medición de desinstalaciones.

Firma de método

void updateServerUninstallToken(string token)

Ejemplo

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

setImeiData

Descripción

Para enviar explícitamente el IMEI a AppsFlyer.

Firma de método

void setImeiData(string imei)

Ejemplo

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

setAndroidIdData

Descripción

 Para enviar explícitamente el ID de Android a AppsFlyer.

Firma de método

void setAndroidIdData(string androidId)

Ejemplo

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

waitForCustomerUserId

Descripción

Esta función garantiza que el SDK no comience a funcionar hasta que se haya provisto el customer user ID.

Firma de método

void waitForCustomerUserId(bool wait)

Ejemplo

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

setCustomerIdAndStartSDK

Descripción

Para suministrarle al SDK el ID de usuario de cliente pertinente y activar el SDK para que comience su actividad normal.

Firma de método

void setCustomerIdAndStartSDK(string id)

Ejemplo

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

getOutOfStore

Descripción

Obtener el valor actual de AF_STORE.

Firma de método

string getOutOfStore()

Ejemplo

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

setOutOfStore

Descripción

Configurar manualmente el valor de AF_STORE.

Firma de método

void setOutOfStore(string sourceName)

Ejemplo

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

setCollectAndroidID

Descripción

Optar por no recopilar el ID de Android. Si la aplicación NO contiene Google Play Services, el SDK recopila el ID de Android. Sin embargo, las aplicaciones con Google Play Services deberían evitar la recopilación del ID de Android, ya que esto viola la política de Google Play.

Firma de método

void setCollectAndroidID(bool isCollect)

Ejemplo

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

setCollectIMEI

Descripción

Optar por no recopilar el IMEI. Si la aplicación NO contiene Google Play Services, el plugin recopila el IMEI. Sin embargo, las aplicaciones con Google Play Services deberían evitar la recopilación del IMEI, ya que esto viola la política de Google Play.

Firma de método

void setCollectIMEI(bool isCollect)

Ejemplo

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

setIsUpdate

Descripción

Configurar manualmente que la aplicación estaba actualizada.

Firma de método

void setIsUpdate(bool isUpdate)

Ejemplo

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

setPreinstallAttribution

Descripción

Especificar el nombre del fabricante o de la fuente de medios al que se atribuye la preinstalación.

Firma de método

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

Ejemplo

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

isPreInstalledApp

Descripción

Indicador booleano para la preinstalación por el fabricante.

Firma de método

bool isPreInstalledApp()

Ejemplo

#if UNITY_ANDROID && !UNITY_EDITOR
            if (AppsFlyerAndroid.isPreInstalledApp())
            {
            }
            #endif

 getAttributionId

Descripción

Obtiene el ID de atribución de Facebook, si existe.

Firma de método

string getAttributionId()

Ejemplo

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

handlePushNotifications

Descripción

Logra que se registren las notificaciones push.

Firma de método

void handlePushNotifications()

Ejemplo

#if UNITY_ANDROID && !UNITY_EDITOR
            AppsFlyerAndroid.handlePushNotifications();
            #endif

validateAndSendInAppPurchase

Descripción

API para la verificación del servidor de las compras in-app. Un evento af_purchase con los valores pertinentes se enviará automáticamente si la validación tiene éxito.

Firma de método

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

Ejemplo

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

API de iOS

setShouldCollectDeviceName

Descripción

Configura este indicador en true para recopilar el nombre del dispositivo real (por ejemplo, "My iPhone"). El valor predeterminado es "false". 

Firma de método

void setShouldCollectDeviceName(bool shouldCollectDeviceName)

Ejemplo

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

setDisableCollectIAd

Descripción

Optar por la exclusión de las atribuciones de Apple Search Ads.

Firma de método

void setDisableCollectIAd(bool disableCollectIAd)

Ejemplo

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

setUseReceiptValidationSandbox

Descripción

Validación de recibos de compra in-app en el entorno de Apple (producción o entorno de pruebas). El valor predeterminado es "false".

Firma de método

void setUseReceiptValidationSandbox(bool useReceiptValidationSandbox)

Ejemplo

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

setUseUninstallSandbox

Descripción

Configura este indicador para probar la desinstalación en el entorno de Apple (producción o entorno de pruebas). El valor predeterminado es "false".

Firma de método

void setUseUninstallSandbox(bool useUninstallSandbox)

Ejemplo

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

validateAndSendInAppPurchase

Descripción

Para enviar y validar las compras in-app, llama a este método desde el método ProcessPurchase.

Firma de método

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

Ejemplo

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

registerUninstall

Descripción

Registra para la notificación remota y proporciona a AppsFlyer el token push del dispositivo.

Firma de método

void registerUninstall(byte[] deviceToken)

Ejemplo

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

handleOpenUrl

Descripción

Se utiliza para registrar manualmente los enlaces profundos.

Firma de método

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

Ejemplo

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

onOpenStoreLinkGenerated

Descripción

Permite utilizar el componente StoreKit para abrir App Store mientras permaneces en el contexto de tu aplicación. Más información.

Firma de método

public void onOpenStoreLinkGenerated(string link)

Ejemplo

public void onOpenStoreLinkGenerated(string link)
            {
            }

disableSKAdNetwork

Descripción

Te permite desactivar la atribución de SKAdNetwork. Configurar en true para desactivar.

Firma de método

bools disableSKAdNetwork(int isDisabled)

Ejemplo

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

waitForATTUserAuthorizationWithTimeoutInterval

Descripción

Se utiliza si quieres solicitar la autorización del usuario a través de una ventana emergente antes de acceder a los datos relacionados con la aplicación para registrar al usuario o al dispositivo (por ejemplo, IDFA). Si el usuario lo autoriza, se enviará el IDFA al SDK. El intervalo de tiempo de espera le da al usuario una cantidad de tiempo determinada para autorizar la recopilación del IDFA. Después de que el temporizador expira, el IDFA no se recopila.

Firma de método

void waitForATTUserAuthorizationWithTimeoutInterval(int timeoutInterval)

Ejemplo

#if UNITY_IOS && !UNITY_EDITOR
    AppsFlyeriOS.waitForATTUserAuthorizationWithTimeoutInterval(60);
#endif
¿Fue útil este artículo?