Wird weitergeleitet

In diesem Dokument wird beschrieben, wie Sie die Weiterleitung von Daten an Google Analytics mit dem Google Analytics SDK Version 4 für Android verwalten können.

Übersicht

Mit dem Google Analytics SDK Version 4 für Android erfasste Daten werden lokal gespeichert und bevor sie in einem separaten Thread an Google Analytics gesendet werden.

Die Daten müssen bis 4:00 Uhr des Folgetags in der lokalen Zeitzone der jeweiligen Ansicht gesendet und empfangen werden. Später empfangene Daten werden nicht in Berichten berücksichtigt. Wenn ein Treffer beispielsweise um 23:59 Uhr lokal in die Warteschlange gestellt wird, muss er innerhalb von 4 Stunden (bis 3:59 Uhr) gesendet werden, damit er in Berichten berücksichtigt wird. Ein Treffer, der um 00:00 Uhr in die Warteschlange gestellt wird, muss hingegen innerhalb von 28 Stunden, d.h. 3:59 Uhr des folgenden Tages, gesendet werden, damit er in Berichten enthalten ist.

Regelmäßige Disposition

Standardmäßig werden Daten alle 30 Minuten aus dem Google Analytics SDK Version 4 gesendet.

So legen Sie die Weiterleitungsdauer programmatisch fest:

// Set the dispatch period to 90 seconds.
GoogleAnalytics.getInstance(this).setLocalDispatchPeriod(90);

So legen Sie den Weiterleitungszeitraum in der XML-Konfigurationsdatei fest:

<integer name="ga_dispatchPeriod">30</integer>

Wenn Sie einen Wert von null oder negativ festlegen, wird die regelmäßige Weiterleitung deaktiviert. Wenn Sie Daten an Google Analytics senden möchten, müssen Sie die manuelle Weiterleitung verwenden.

// Disable periodic dispatch by setting dispatch period to a value less than 1.
GoogleAnalytics.getInstance(this).setLocalDispatchPeriod(0);

Wenn ein Nutzer den Netzwerkzugriff verliert oder die Anwendung schließt, während noch auf die Weiterleitung gewartet wird, bleiben diese Treffer im lokalen Speicher erhalten. Sie werden ausgelöst, wenn Ihre Anwendung das nächste Mal ausgeführt wird und die Weiterleitung aufgerufen wird.

Manueller Versand

So senden Sie Treffer manuell, z. B. wenn Sie wissen, dass das Funkgerät bereits zum Senden anderer Daten verwendet wird:

GoogleAnalytics.getInstance(this).dispatchLocalHits();

Hintergrundweiterleitung

So aktivieren Sie die Hintergrundweiterleitung in Apps, die auf Nicht-Google Play-Geräten ausgeführt werden, in der Konfigurationsdatei ApplicationManifest.xml:

  • Rufen Sie die Berechtigung WAKE_LOCK ab.
  • AnalyticsReceiver registrieren.
  • AnalyticsService registrieren.

Beispiel:

<manifest>
  <!-- ... -->

  <!-- Get permission for reliable local dispatching on non-Google Play devices. -->
  <uses-permission android:name="android.permission.WAKE_LOCK" />

  <application name="com.example.MyApp">
    <!-- Register AnalyticsReceiver and AnalyticsService to support background
         dispatching on non-Google Play devices. -->
    <receiver android:name="com.google.android.gms.analytics.AnalyticsReceiver"
      android:enabled="true">
      <intent-filter>
        <action android:name="com.google.android.gms.analytics.ANALYTICS_DISPATCH" />
      </intent-filter>
    </receiver>
    <service android:name="com.google.android.gms.analytics.AnalyticsService"
      android:enabled="true"
      android:exported="false"/>

    <!-- ... -->
  </application>
</manifest>