Migration vers la bibliothèque Android 4.x

Ces informations vous aident à migrer de la version 2.x ou 3.x de la bibliothèque Android vers la version 4.x.

IMPORTANT

Le SDK utilise SharedPreferences pour stocker les données nécessaires au calcul d’utilisateurs uniques, de mesures de cycle de vie et d’autres données nécessaires dans le cadre du fonctionnement de base du SDK. Si vous modifiez ou supprimez dans SharedPreferences des valeurs attendues par le SDK, il peut en résulter un comportement inattendu sous la forme de données incohérentes.

Dans la bibliothèque version 4.x, les méthodes publiques sont consolidées dans un en-tête. En outre, toutes les fonctionnalités sont désormais accessibles par des méthodes de niveau de classe : ainsi, il n’est pas nécessaire d’effectuer le suivi des pointeurs, des instances ou des singletons.

Événements, props et eVars

Dans la version 4, vous ne pouvez plus affecter de variables telles que des événements, des eVars, des props, des héritiers et des listes dans votre application. Au lieu de cela, le SDK utilise des données contextuelles et des règles de traitement pour mapper les données de votre application sur les variables Analytics à des fins de reporting.

Les règles de traitement offrent les avantages suivants :

  • Vous pouvez modifier le mapping de vos données sans envoyer de mise à jour à la boutique d’applications.

  • Vous pouvez utiliser des noms significatifs pour les données au lieu de définir des variables spécifiques à une suite de rapports.

  • L’envoi de données supplémentaires n’a que peu d’impact.

    Ces valeurs n’apparaîtront dans les rapports qu’après avoir été mappées à l’aide de règles de traitement.

CONSEIL

Les valeurs que vous avez directement attribuées aux variables doivent être ajoutées à la table de hachage HashMap data.

Suppression des propriétés non utilisées

Le nouveau fichier ADBMobileConfig.json comporte des paramètres globaux, spécifiques à une application et remplace la plupart des variables de configuration utilisées dans les versions précédentes. Voici un exemple de fichier ADBMobileConfig.json :

{
    "version" : "1.0",
    "analytics" : {
        "rsids" : "coolApp",
        "server" : "my.CoolApp.com",
        "charset" : "UTF-8",
        "ssl" : true,
        "offlineEnabled" : true,
        "lifecycleTimeout" : 5,
        "privacyDefault" : "optedin",
        "poi" : [
                    ["san francisco",37.757144,-122.44812,7000],
                    ["santa cruz",36.972935,-122.01725,600]
                ]
    },
 "target" : {
  "clientCode" : "myTargetClientCode",
  "timeout" : 5
 },
 "audienceManager" : {
  "server" : "myServer.demdex.com"
 }
}

Déplacement du fichier de configuration et migration vers la version 4

Les tableaux suivants répertorient les variables de configuration que vous devez déplacer vers le fichier de configuration.

Déplacement du fichier de configuration

  1. Déplacez la valeur définie pour la variable dans la première colonne vers la variable dans la seconde colonne.
  2. Supprimez l’ancienne variable de configuration de votre code.

Migration depuis la version 3.x

Pour migrer de la version 3.x vers la version 4, déplacez la valeur de la variable/méthode de configuration vers la variable ADBMobileConfig.json.

Variable ou méthode de configuration Variable du fichier ADBMobileConfig.json
setOfflineTrackingEnabled "offlineEnabled"
setOfflineHitLimit "batchLimit"
reportSuiteIDs "rsids"
trackingServer "server"
charSet "charset"
currencyCode "currency"
ssl "ssl"
linkTrackVars Supprimer, n’est plus utilisé.
linkTrackEvents Supprimer, n’est plus utilisé.

Migration depuis la version 2.x

Pour migrer depuis la version 2.x vers la version 4.x, déplacez la valeur de la première colonne vers la variable de la deuxième colonne.

Variable de configuration Variable du fichier ADBMobileConfig.json
trackOffline "offlineEnabled"
offlineLimit "batchLimit"
account "rsids"
trackingServer “server”, supprimez le préfixe "https://". Le préfixe de protocole est ajouté automatiquement en fonction du paramètre “ssl”.
trackingServerSecure Supprimer. Pour les connexions sécurisées, définissez "server", puis activez "ssl".
charSet "charset"
currencyCode "currency"
ssl "ssl"
linkTrackVars Supprimer, n’est plus utilisé.
linkTrackEvents Supprimer, n’est plus utilisé.
timestamp Supprimer, ne peut plus être configuré.
dc Supprimer, n’est plus utilisé.
userAgent Supprimer, ne peut plus être configuré.
dynamicVariablePrefix Supprimer, n’est plus utilisé.
visitorNamespace Supprimer, n’est plus utilisé.
usePlugins Supprimer, n’est plus utilisé.
useBestPractices tous les appels à la mesure churn (getChurnInstance) Supprimée, remplacée par des mesures de cycle de vie.

Mise à jour des appels et des variables de suivi

Au lieu d’utiliser les appels web track et trackLink, le SDK version 4 utilise les méthodes suivantes :

  • trackState, qui sont les affichages disponibles dans l’application, par exemple home dashboard, app settings, cart, etc.

    Ces états sont semblables aux pages d’un site web ; les appels trackState incrémentent les pages vues.

  • Les actions trackAction, par exemple logons, banner taps, feed subscriptions et autres, qui se produisent dans l’application et que vous souhaitez mesurer.

Le paramètre contextData pour ces deux méthodes est un HashMap<String, Object>, qui comporte les paires nom-valeur envoyées en tant que données contextuelles.

Événements, props et eVars

Dans la version 4, vous ne pouvez plus affecter de variables telles que des événements, des eVars, des props, des héritiers et des listes directement dans votre application. Au lieu de cela, le SDK utilise des données contextuelles et des règles de traitement pour mapper les données de votre application sur les variables Analytics à des fins de reporting.

Les règles de traitement offrent les avantages suivants :

  • Vous pouvez modifier le mapping de vos données sans envoyer de mise à jour à la boutique d’applications.

  • Vous pouvez utiliser des noms significatifs pour les données au lieu de définir des variables spécifiques à une suite de rapports.

  • L’envoi de données supplémentaires n’a que peu d’impact.

    Ces valeurs n’apparaîtront dans les rapports qu’après avoir été mappées à l’aide de règles de traitement. Pour plus d’informations, voir Règles de traitement et données contextuelles.

Les valeurs que vous avez affectées directement aux variables doivent être ajoutées à la table de hachage HashMap data. Cela signifie que les appels vers setProp, setEvar, ainsi que les attributions à des données contextuelles persistantes, doivent être supprimés et les valeurs doivent être ajoutées au paramètre data.

AppSection/server, GeoZip, transaction ID, Campaign et autres variables standard

Les données que vous définissiez dans l’objet de mesure, y compris les variables répertoriées ci-dessus, doivent être ajoutées à la table de hachage HashMap data. Les seules données envoyées avec un appel trackState ou trackAction sont la charge utile dans le paramètre data.

Remplacement des appels de suivi

Remplacez les méthodes suivantes par un appel à trackState ou trackAction :

  • Migration depuis la version 3.x

    • trackAppState (trackState)
    • trackEvents (trackAction)
    • track (trackAction)
    • trackLinkURL (trackAction)
  • Migration depuis la version 2.x

    • track (trackState)
    • trackLink (trackAction)

Identifiant visiteur personnalisé

Remplacez la variable visitorID par un appel à setUserIdentifier.

Suivi hors ligne

Le suivi hors ligne est activé dans le fichier ADBMobileConfig.json et le reste de la configuration hors ligne est effectué automatiquement.

Supprimez les appels aux méthodes suivantes :

Version 3.x

  • setOnline
  • setOffline

Version 2.x

  • forceOffline
  • forceOnline

Variable products

Pour obtenir plus d’informations sur la variable products, voir Variable products.

Sur cette page