L’intégration Android

L’intégration

Pour intégrer la bibliothèque, utilisez le code suivant:

import android.app.Application;
import com.bmtanalytics.sdk.tracking.BMT;
import com.bmtanalytics.sdk.tracking.Configuration;
import com.bmtanalytics.sdk.tracking.Configuration.UploadInterval;
import com.bmtanalytics.sdk.tracking.Event.Type;
import com.bmtanalytics.sdk.tracking.Event;
import com.bmtanalytics.sdk.tracking.ExtraData;
public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        initBMT();
    }
    private void initBMT() {
        int BMT_API_KEY = 12;
        Configuration config = new Configuration.Builder()
        .setUploadInterval(UploadInterval.HALF_HOUR)
        .setGZIPEnabled(false)
        .setLogcatEnabled(true)
        .setUncaugthExceptionTracking(true)
        .build();
        BMT.init(this, BMT_API_KEY, config);   // with custom config
        // BMT.init(this, BMT_API_KEY); // with default config
        
        BMT.SessionData.addExtraData(
             new ExtraData("app", "BMT SDK Sample"));
        BMT.track(new Event(Type.OTHER, "Application loaded"));
    }
}    

La configuration

Pour contrôler la logique de travail de Maxymizely système de suivi, utilisez ces champs et méthodes:

Principaux domaines de configuration:

  • SiteId – un identificateur de la ressource nécessaire pour suivre
  • ConfigurationId – un identificateur pour le suivi des utilisateurs
  • ExternalId – un identifiant d’utilisateur unique (par exemple, un ID d’utilisateur interne dans la base de données, e-mail, pseudo, Facebook ID, ou toute autre information qui permet d’identifier un utilisateur unique)

Les méthodes de configuration supplémentaires:

BMT.SessionData.replaceExtraData(new ExtraData("attribute", attr))  

Cette méthode permet d’attribuer un certain nombre de paramètres supplémentaires pour un utilisateur sous la forme de nom-valeur.

Vous aurez besoin d’accorder des droits d’autorisation suffisantes dans android.permission sorte que le système de suivi pourrait transférer les données collectées sur le serveur.

  • #INTERNET de droits à télécharger les événements au serveur de suivi
  • #ACCESS_NETWORK_STATE pour vérifier l’état des connexions réseau
  • #READ_PHONE_STATE pour recueillir l’information sur un dispositif

Voici une partie du fichier manifeste Android:

<service
    android:name="com.bmtanalytics.sdk.api.UploadService"
    android:permission="android.permission.INTERNET" />
<receiver
    android:name="com.bmtanalytics.sdk.api.ConnectivityReceiver"
    android:permission="android.permission.ACCESS_NETWORK_STATE" >
    <intent-filter>
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
</receiver>

L’application

La base pour l’analyse est le processus de suivi des événements qui se déroulent au sein d’une application. Ces événements peuvent être initiés par un utilisateur, ainsi que par un contenu interactif à l’intérieur de la fenêtre dans laquelle se trouve le contenu.

Pour l’intégrateur de système, il ya deux niveaux d’événements consignés:

  • Niveau système
  • Niveau d’utilisateur

Le niveau de système comprend Type.ERROR type d’événement, qui enregistre d’information sur les erreurs. Cet événement est appelé automatiquement par le système lorsqu’une exception se produit. Au niveau de l’utilisateur, tous les types d’événements sont disponibles.

Exemple d’installation de suivi:

BMT.track(new Event(Type.LOADPAGE, MyClass.class.getSimpleName()));  

En utilisant la méthode BMT.track, l’intégrateur met en œuvre des points de contrôle dans le système fonctionnel de la ressource Web.

Pour l’identification précise des points de contrôle / commande des événements il ya un ensemble de paramètres de configuration:

  • Valeur – identifiant checkpoint (id html de l’élément, le nom de domaine, etc.)
  • CustomAttribute1, CustomAttribute2, CustomAttribute3 – trois attributs supplémentaires sont fixés à la discrétion de l’utilisateur/développeur

Dans le corps de la procédure qui gère l’événement, vous devez spécifier:

BMT.track(new Event(Type.CLICK, "Login button clicked"));
BMT.track(new Event(Type.LOADPAGE, MyClass.class.getSimpleName()));  

Exemples d’événements:

1. Si vous entrez un code incorrect pouvoirs:

BMT.track(new Event(Type.LOGIN, "Login failed, incorrect credentials"));
BMT.SessionData.removeExtraDataByKey(Email);  

2. Ou lorsque vous entrez les informations d’identification correctes:

BMT.track(new Event(Type.LOGIN, "Attempting to login"));
BMT.track(new Event(Type.VIEWELEMENT, "Progress is shown"));