Guide d'intégration du plugin Unity V6—Référence de l'API

En bref : descriptions techniques des classes et des méthodes incluses dans le SDK AppsFlyer.

 Lectures connexes

Ces articles vous fourniront une vision complète de l'intégration du plugin Unity à vos apps :

Les API Android et iOS

initSDK

Description

Initialise le plug-in avec la clé dev ainsi que l'id d'app. La clé dev est requise pour toutes les apps. L'id d'app est requis pour IOS uniquement. Si votre app est sous Android exclusivement, indiquez "null" pour l'id de l'app.Le game object contient l'interface IAppsFlyerConversionData.

Signature de la méthode

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

Exemple

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

startSDK

Description

Une fois cette API invoquée, le SDK démarrera, les sessions seront immédiatement envoyées et toutes les transitions d'arrière-plan et d'avant-plan enregistreront une session.

Signature de la méthode

void startSDK()

Exemple

AppsFlyer.startSDK();

sendEvent

Description

L'enregistrement des événements in-app est effectué en appelant sendEvent avec le nom de l'événement et les paramètres de valeur.

Signature de la méthode

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

Exemple

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

Description

Certains cas de force majeur pourront vous obliger à stopper toute fonction du SDK afin de vous conformer aux réglementations en matière de vie privée. Pour ce faire, vous devrez utiliser l'API stopSDK. Une fois invoqué, le SDK ne communiquera plus avec les serveurs AppsFLyer et cessera de fonctionner.

Signature de la méthode

void stopSDK(bool isSDKStopped)

Exemple

AppsFlyer.stopSDK(true);

isSDKStopped

Description

Si l'API stopSDK (booléenne) était réglée sur true.

Signature de la méthode

bool isSDKStopped()

Exemple

if (!AppsFlyer.isSDKStopped())
{

}

getSdkVersion

Description

Permet d'obtenir la version du SDK AppsFlyer

Signature de la méthode

string getSdkVersion()

Exemple

string version = AppsFlyer.getSdkVersion();

setIsDebug

Description

Active les journaux de débogage

Signature de la méthode

void setIsDebug(bool shouldEnable)

Exemple

AppsFlyer.setIsDebug(true);

Définir l'ID Utilisateur-Client

Description

Définir l'ID utilisateur du client (CUID). 

Signature de la méthode

void setCustomerUserId(string id)

Exemple

AppsFlyer.setCustomerUserId("custom_user_id");

setAppInviteOneLink

Description

Définir l'ID du modèle OneLink utilisé pour créer des liens d'attribution personnalisés pour les invitations utilisateur.

Signature de la méthode

setAppInviteOneLinkID(string oneLinkId)

Exemple

AppsFlyer.setAppInviteOneLinkID("abcd");

setAdditionalData

Description

Ajouter des données supplémentaires à envoyer aux plates-formes partenaires externes.

Signature de la méthode

setAdditionalData(Dictionary<string, string> customData)

Exemple

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

setResolveDeepLinkURLs

Description

Résoudre OneLink depuis les domaines de clic. Pour plus d’informations, consultez Résoudre les URL Deep Link encapsulées.

Signature de la méthode

setResolveDeepLinkURLs(params string[] urls)

Exemple

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

setOneLinkCustomDomain

Description

Les annonceurs peuvent utiliser cette méthode pour définir des domaines vanity OneLink.

Signature de la méthode

void setOneLinkCustomDomain(params string[] domains)

Exemple

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

setcurrencyCode

Description

A utiliser pour les événements générant des revenus. Accepte les codes de devise ISO.

Signature de la méthode

public void setCurrencyCode(String currencyCode);

Exemple

AppsFlyer.setCurrencyCode("GBP");

recordLocation

Description

Enregistrer manuellement la situation géo de l'utilisateur

Signature de la méthode

void recordLocation(double latitude, double longitude)

Exemple

AppsFlyer.recordLocation(40.7128, 74.0060);

anonymizeUser

Description

Utilisé lors de l'initialisation pour rendre explicitement anonymes l'installation, les événements et les sessions de l'utilisateur. Pour désactiver l'anonymat, appelez à nouveau anonymizeUser, et définissez-le sur false.

Signature de la méthode

void anonymizeUser(bool shouldAnonymizeUser)

Exemple

AppsFlyer.anonymizeUser(true);

getAppsFlyerId

Description

Permet d'obtenir l'identifiant unique AppsFlyer pour une nouvelle installation.

Signature de la méthode

string getAppsFlyerId()

Exemple

string uid = AppsFlyer.getAppsFlyerId();

setMinTimeBetweenSessions

Description

Par défaut, il doit se passer au moins 5 secondes entre 2 lancements d'app pour qu'elles soient considérées comme des sessions distinctes. Définissez une valeur personnalisée pour fixer la durée minimum entre chaque sessions.

Signature de la méthode

void setMinTimeBetweenSessions(int seconds)

Exemple

AppsFlyer.setMinTimeBetweenSessions(4);

setUserEmails

Description

Définissez les e-mails des utilisateurs et chiffrez-les.

Signature de la méthode

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

Exemple

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

setHost

Description

Définir un hôte personnalisé

Signature de la méthode

void setHost(string hostPrefixName, string hostName)

Exemple

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

getConversionData

Description

Permet d'enregistrer un port d'écoute des données de conversion afin d'autoriser l'accès aux données d'attribution de l'utilisateur en temps réel pour chaque nouvelle installation, et ce directement au niveau du SDK. Vous pourrez ainsi offrir aux utilisateurs un contenu personnalisé ou bien les diriger vers des activités spécifiques à l'app, ce qui pourra renforcer considérablement leur engagement vis-à-vis de votre app.

Signature de la méthode

void getConversionData(string objectName);

Exemple

AppsFlyer.getConversionData(gameObject.name);

attributeAndOpenStore

Description

Pour attribuer le clic et lancer la page de l'application vers l'app store.

Signature de la méthode

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

Exemple


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

Description

Pour attribuer une impression, utilisez l'appel d'API suivant. Assurez-vous d'utiliser l'id de l'app au centre de la promotion tel qu'il apparaît dans le tableau de bord d'AppsFlyer.

Signature de la méthode

void recordCrossPromoteImpression(string appID, string campaign);

Exemple

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

generateUserInviteLink

Description

La classe LinkGenerator génère l'URL d'invitation selon différentes méthodes de paramétrage, ce qui permet de transmettre d'autres données concernant le clic.

Signature de la méthode

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

Exemple

AppsFlyer.generateUserInviteLink(params, this);

onAppOpenAttribution

Description

Obtenir des données de deep linking lorsqu'une application s'ouvre via un deep link.

Signature de la méthode

public void onAppOpenAttribution(string validateResult)

Exemple

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

onAppOpenAttributionFailure

Description

Récupère les erreurs provenant de l'obtention des données de deep linking.

Signature de la méthode

public void onAppOpenAttributionFailure (string error)

Exemple

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

onConversionDataSuccess

Description

Méthode utilisée pour obtenir les données de conversion. Utile pour le deep linking différé. En savoir plus.

  • À partir du SDK v5 : onConversionDataSuccess
  • Avant le SDK v5 : onConversionDataReceived 

Signature de la méthode

public void onConversionDataSuccess(string conversionData)

Exemple

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

onConversionDataFail

Description

Gère les erreurs lors de l'échec de l'obtention des données de conversion des installations.

Signature de la méthode

public void onConversionDataFail(string error)

Exemple

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

onInviteLinkGenerated

Description

Callback de confirmation de la génération d'URL OneLink.

Signature de la méthode

public void onInviteLinkGenerated(string link)

Exemple

public void onInviteLinkGenerated(string link)
            {
            }

onInviteLinkGeneratedFailure

Description

Callback d'échec de la génération d'URL OneLink.

Signature de la méthode

public void onInviteLinkGeneratedFailure(string error)

Exemple

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

didFinishValidateReceipt

Description

Callback de confirmation de l'API validateAndSendInAppPurchase.

Pour Android : le callback renvoie « Validate success » (Validation réussie).
Pour iOS : le callback renvoie une chaîne JSON depuis l'API Apple verifyReceipt.

Signature de la méthode

public void didFinishValidateReceipt(string result)

Exemple

public void didFinishValidateReceipt(string result)
            {
            }

didFinishValidateReceiptWithError

Description

Callback d'échec pour la validation des reçus.

Signature de la méthode

public void didFinishValidateReceiptWithError(string error)

Exemple

public void didFinishValidateReceiptWithError(string error)
            {
            }

setPhoneNumber

Description

Permet de définir le numéro de téléphone de l'utilisateur.

Signature de la méthode

void setPhoneNumber(string phoneNumber)

Exemple

AppsFlyer.setPhoneNumber("4166358181");

setSharingFilterForAllPartners (deprecated)

Description

Utilisé par les annonceurs pour exclure tous les réseaux/partenaires intégrés de l'obtention de données. En savoir plus

Signature de la méthode

void setSharingFilterForAllPartners()

Exemple

AppsFlyer.setSharingFilterForAllPartners();

setSharingFilter (deprecated)

Description

Utilisé par les annonceurs pour configurer quels (un ou plusieurs) réseaux/partenaires intégrés sont à exclure de l'obtention des données. En savoir plus

Signature de la méthode

void setSharingFilter(params string[] partners)

Exemple

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

setSharingFilterForPartners

Description

Used by advertisers to set some (one or more) networks/integrated partners to exclude from getting data.

Signature de la méthode

void setSharingFilterForPartners(params string[] partners)

Exemple

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)

Les API Android

updateServerUninstallToken

Description

Permet de définir manuellement le jeton d'appareil Firebase pour les mesures de désinstallation.

Signature de la méthode

void updateServerUninstallToken(string token)

Exemple

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

setImeiData

Description

Pour envoyer explicitement l'IMEI à AppsFlyer.

Signature de la méthode

void setImeiData(string imei)

Exemple

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

setAndroidIdData

Description

Pour envoyer explicitement l'ID Android à AppsFlyer.

Signature de la méthode

void setAndroidIdData(string androidId)

Exemple

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

waitForCustomerUserId

Description

Cette fonctionnalité permet de s'assurer que le SDK ne commence pas avant d'avoir obtenu le customerUserID.

Signature de la méthode

void waitForCustomerUserId(bool wait)

Exemple

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

setCustomerIdAndStartSDK

Description

Permet d'indiquer au SDK l'ID utilisateur-client approprié et enclenche l'activité normale du SDK.

Signature de la méthode

void setCustomerIdAndStartSDK(string id)

Exemple

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

getOutOfStore

Description

Récupère la valeur AF_STORE en cours.

Signature de la méthode

chaîne getOutOfStore()

Exemple

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

setOutOfStore

Description

Permet de définir manuellement la valeur AF_STORE.

Signature de la méthode

void setOutOfStore(string sourceName)

Exemple

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

setCollectAndroidID

Description

Désactive la collecte des ID Android. Si l'application ne contient PAS les services Google Play, l'identifiant Android est collecté par le SDK. Cependant, les applications dotées de services Google Play doivent éviter de collecter les ID Android, étant donné que cela vient enfreindre la politique de Google Play.

Signature de la méthode

void setCollectAndroidID(bool isCollect)

Exemple

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

setCollectIMEI

Description

Désactive la collecte des IMEI. Si l'application ne contient PAS les services Google Play, l'IMEI de l'appareil est collecté par le plug-in. Cependant, les applications dotées de services Google Play doivent éviter de collecter les IMEI, étant donné que cela vient enfreindre la politique de Google Play.

Signature de la méthode

void setCollectIMEI(bool isCollect)

Exemple

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

setIsUpdate

Description

Permet de définir manuellement que l'app a été mise à jour.

Signature de la méthode

void setIsUpdate(bool isUpdate)

Exemple

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

setPreinstallAttribution

Description

Pour indiquer le nom du fabricant ou de la source média à qui la pré-installation est attribuée.

Signature de la méthode

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

Exemple

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

isPreInstalledApp

Description

Indicateur booléen à pré-installer par le fabricant.

Signature de la méthode

bool isPreInstalledApp()

Exemple

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

getAttributionId

Description

Get the Meta ads attribution ID, if one exists.

Signature de la méthode

string getAttributionId()

Exemple

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

handlePushNotifications

Description

Permet d'enregistrer les notifications push.

Signature de la méthode

void handlePushNotifications()

Exemple

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

validateAndSendInAppPurchase

Description

Une API pour la vérification par le serveur des achats intégrés. Un événement af_purchase avec les bonnes valeurs sera automatiquement envoyé si la vérification est est réussie.

Signature de la méthode

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

Exemple

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

API iOS

setShouldCollectDeviceName

Description

Réglez ce drapeau sur true pour collecter le nom de l'appareil en cours (par exemple « Mon iPhone »). La valeur par défaut est « false ».

Signature de la méthode

void setShouldCollectDeviceName(bool shouldCollectDeviceName)

Exemple

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

setDisableCollectIAd

Description

Désactivation de l'attribution des Apple Search Ads.

Signature de la méthode

void setDisableCollectIAd(bool disableCollectIAd)

Exemple

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

setUseReceiptValidationSandbox

Description

Validation de réception des achats in-app sous environnement Apple (production ou sandbox). La valeur par défaut est « false ».

Signature de la méthode

void setUseReceiptValidationSandbox(bool useReceiptValidationSandbox)

Exemple

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

setUseUninstallSandbox

Description

Définissez cet drapeau pour tester la désinstallation sous environnement Apple (production ou sandbox). La valeur par défaut est « false ».

Signature de la méthode

void setUseUninstallSandbox(bool useUninstallSandbox)

Exemple

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

validateAndSendInAppPurchase

Description

Pour envoyer et valider des achats in-app, appelez cette méthode depuis la méthode processPurchase.

Signature de la méthode

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

Exemple

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

registerUninstall

Description

Permet de s'inscrire pour la notification à distance et fournit à AppsFlyer le jeton de l'appareil push.

Signature de la méthode

void registerUninstall(byte[] deviceToken)

Exemple

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

Description

Permet d'enregistrer manuellement le deep linking.

Signature de la méthode

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

Exemple

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

onOpenStoreLinkGenerated

Description

Vous permet d'utiliser le composant StoreKit pour ouvrir l'App Store sans quitter le contexte de votre app. En savoir plus.

Signature de la méthode

public void onOpenStoreLinkGenerated(string link)

Exemple

public void onOpenStoreLinkGenerated(string link)
            {
            }

disableSKAdNetwork

Description

Vous permet de désactiver l'attribution du SKAdNetwork. Réglez sur "true" pour désactiver.

Signature de la méthode

bools disableSKAdNetwork(int isDisabled)

Exemple

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

waitForATTUserAuthorizationWithTimeoutInterval

Description

À utiliser si vous souhaitez demander l'autorisation de l'utilisateur dans un popup avant d'accéder aux données liées à l'app pour enregistrer soit l'utilisateur, soit le dispositif (par exemple, IDFA) Si l'utilisateur accepte, l'IDFA sera transmis au SDK.L'intervalle de temporisation donne à l'utilisateur un délai déterminé pour accepter la collecte de l'IDFA. Après l'expiration du délai, l'IDFA n'est pas collectée.

Signature de la méthode

void waitForATTUserAuthorizationWithTimeoutInterval(int timeoutInterval)

Exemple

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