Integration von Android

Integration

Um die Bibliothek zu integrieren, verwenden Sie den folgenden Codeschnipsel:

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

Konfiguration

Um die Arbeitslogik des Maxymizely Verfolgungssystems zu kontrollieren, verwenden Sie diese Felder und Methoden:

Die Hauptkonfigurationsfelder:

  • SiteId – ein Quellenidentifikator, der verfolgt werden muss
  • ConfigurationId – ein Identifikator für die Benutzerverfolgung
  • ExternalId – ein eindeutiger Benutzeridentifikator (zum Beispiel, eine interne Benutzer-ID in der Datenbank, E-Mail, Login, Facebook-ID, oder andere Information, die den eindeutigen Benutzer zu identifizieren hilft)

Zusätzliche Konfigurationsmethoden:

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

Diese Methode ermöglicht die Zuordnung einer Vielzahl der zusätzlichen Parameter zu dem Benutzer in der Form Name-Wert.

Sie müssen ausreichende Zugriffsberechtigungen in android.permission gewähren, damit das Verfolgungssystem die erhobenen Daten auf den Server übertragen könnte.

  • #INTERNET um die Ereignisse auf den Verfolgungsserver hochzuladen
  • #ACCESS_NETWORK_STATE um den Status der Netzwerkverbindungen zu prüfen
  • #READ_PHONE_STATE um die Information über das Gerät zu sammeln

Hier gibt es ein Teil der Android Manifestdatei:

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

Applikation

Die Grundlage für die Analyse ist der Verfolgungsprozess von Ereignissen, die in der Applikation stattfinden. Diese Ereignisse können vom Benutzer initiiert werden, sowie mit dem interaktiven Ihnalt im Fenster, wo der Inhalt sich befindet.

Für den Systemfintegrator gibt es zwei Ebenen der protokollierten Ereignisse:

  • Systemebene
  • Benutzerebene

Die Systemebene beinhaltet den Type.ERROR Ereignistyp, der die Infrormation über die Fehler protokolliert. Dieses Ereignis wird automatisch vom System aufgerufen, wenn eine Ausnahme auftritt. Auf der Benutzerebene stehen alle Typen der Ereignisse zur Verfügung.

Ein Beispiel für die Installation der Verfolgung:

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

Mit der Verwendung der BMT.track Methode implementiert der Integrator die Kontrollstellen im Web Resource Funktionssystem.

Für eine genaue Identifizierung der Kontrollereignisse/Kontrollstellen gibt es einen Satz der Konfigurationsparametern:

  • Wert – Identifikator des Kontrollpunktes (ID HTML des Elements, Feldname, usw.)
  • CustomAttribute1, CustomAttribute2, CustomAttribute3 – drei zusätzliche Attribute werden nach Wahl des Benutzers/Entwicklers gesetzt

Im Körper der Prozedur, die das Ereignis behandelt, müssen Sie angeben:

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

Beispiele für Ereignisse:

1. Wenn Sie falsche Anmeldedaten eingeben:

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

2. Oder wenn Sie richtige Anmeldedaten eingeben:

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