Skip to content

Integration der SZM-Library

App-Libraries: Wichtig zu beachten!

Mit dem Einsatz der pseudonymen INFOnline Library Android 2.3.0/iOS 2.4.0 (veröffentlicht am 11. Januar 2022) ist eine Übermittlung der Consententscheidung des Nutzers zwingend erforderlich. Diese kann durch eine TCF 2.x-konforme Consent Management Plattform (CMP) oder eine manuelle Consentübermittlung (OptIn) realisiert werden. Die Consententscheidung des Nutzers wird direkt im Sensor der INFOnline Library verarbeitet. Somit werden nur Messimpulse an das INFOnline Messsystem übermittelt, wenn eine positive Consententscheidung durch den Nutzer vorliegt.

Thread-safe

Die IOLib für Android ist vollständig Thread-safe implementiert.

IOLib Dateien

Die INFOnline SZM-Library für Android umfasst folgende Dateien/Verzeichnisse

  • RELEASE_NOTES.txt
    Diese Datei enthält Informationen zum Release der IOLib.

  • CHANGELOG.txt
    Diese Datei enthält eine Historie der Änderungen der einzelnen Releases der IOLib.

  • Datei „infonlinelib_2.1.0.aar“
    Die IOLibrary zur Erfassung der Nutzungsdaten einer Android-App als binäre Distribution

  • Verzeichnis „INFOnlineLibrarySample“
    Ein Beispiel-Projekt für Android Studio, welches den Einsatz der IOLibrary für Android demonstriert.

Integration der IOLib MessLibrary

Im Folgenden wird die Integration der IOLib in ein Android App Projekt beschrieben.

1. In Android Studio: Integration der AAR Datei

Die Datei „infonlinelib_X.X.X.aar“ in das zu messende Projekt kopieren (z.b. nach /app/libs)

Image

2. In Android Studio: build.gradle anpassen

Die Datei /app/build.gradle anpassen:

Image

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// Das Verzeichnis, in dem sich infonlinelib_X.X.X.aar befindet, muss als repository angegeben werden 
repositories{ 

              flatDir{ 
                   dirs 'libs'
                        }
 } 

dependencies { 

     // INFOnline Library benötigt die Mobile Ads API der Google Play Services Library implementation  
        'com.google.android.gms:play-services-ads:11.8.0' 

    // Die INFONline Library verlinken implementation 'de.infonline.lib:infonlinelib_X.X.X@aar'

}

3. In Android Studio: Initialisierung der IOLib

  • Neue Klasse erstellen und von Application ableiten oder bestehende Klasse verwenden
  • IOLib initialisieren (im Folgenden beschrieben)
Hinweise

Die IOLib muss in der onCreate() Methode der Application initialisiert werden!

Die IOLLib bietet zur Initialisierung zwei verschiedene Möglichkeiten an:

1) Die Initialisierung der App mit implizitem Session-Start:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import de.infonline.lib.IOLSession;
import de.infonline.lib.IOLSessionType;
import de.infonline.lib.IOLSessionPrivacySetting;
import android.app.Application;

public class SampleApplication extends Application {

  @Override
  public void onCreate() {
    super.onCreate();
    IOLSession.getSessionForType(IOLSessionType.SZM) // Session Type SZM
        .initIOLSession(this, // Application Context
                        "OfferIdentifier", // Offer Identifier
                         BuildConfig.DEBUG, // Debug mode on/off
                         IOLSessionPrivacySetting.LIN); // Privacy Setting
}

ALTERNATIV kann die Lib auch in 2 Schritten initialisiert und die Session gestartet werden :

2) Die reine Initialisierung der IOLLib:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import de.infonline.lib.IOLSession;
import android.app.Application;

public class SampleApplication extends Application {

 @Override
  public void onCreate() {
       super.onCreate();
       IOLSession.init(this) // Application Context
 }
 ```

Zur Laufzeit dann die Initialisierung der Session:
public void initIOLSession() {

1
2
3
4
IOLSession.getSessionForType(IOLSessionType.SZM) // Session Type SZM
          .initIOLSession("OfferIdentifier", // Offer Identifier
                           BuildConfig.DEBUG, // Debug mode on/off
                           IOLSessionPrivacySetting.LIN); // Privacy Setting

} ```

### 4. In Android Studio: Code

  • IOLib kann explizit gestoppt und gestartet werden
Hinweis

Dies funktioniert nur, wenn die IOLSession in der onCreate() Methode der Application initialisiert wurde! Die Methode ist in Kapitel 3.3 / Pkt.3 beschrieben.

5. In Android Studio: Jede Activity

  • Events werden über die IOLSession geloggt.
  • Events können in den Activities der App geloggt werden, z.B. den Aufruf eines ViewAppeared
1
2
3
// Tracking View Appeared
 IOLSession.getSessionForType(IOLSessionType.SZM)
           .logEvent(new IOLViewEvent(IOLViewEventType.appeared));

Last update: May 10, 2023