Disposition

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

Überblick

Daten, die mit dem Google Analytics SDK Version 4 für Android erhoben wurden, werden lokal gespeichert, bevor sie in einem separaten Thread an Google Analytics weitergeleitet werden.

Daten müssen bis 4:00 Uhr des folgenden Tages in der lokalen Zeitzone der jeweiligen Ansicht gesendet und empfangen werden. Daten, die später eingehen, werden nicht in Berichten angezeigt. Wenn sich ein Treffer beispielsweise lokal um 23:59 Uhr in der Warteschlange befindet, muss er innerhalb von vier Stunden bis 3:59 Uhr gesendet werden, damit er in Berichten berücksichtigt wird. Ein Treffer, der um 0:00 Uhr in die Warteschlange gestellt wurde, muss hingegen innerhalb von 28 Stunden gesendet werden, d.h. ab 3:59 Uhr des Folgetags, damit er in den Berichten erscheint.

Regelmäßige Disposition

Standardmäßig werden Daten alle 30 Minuten vom Google Analytics SDK Version 4 für Android gesendet.

So legen Sie den Weiterleitungszeitraum 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 Nullwert oder einen negativen Wert festlegen, wird die regelmäßige Weiterleitung deaktiviert. Sie müssen also die manuelle Weiterleitung verwenden, wenn Sie Daten an Google Analytics senden möchten.

// 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 Ihre Anwendung schließt, während noch Treffer gesendet werden müssen, werden diese Treffer im lokalen Speicher beibehalten. Sie werden abgefertigt, wenn Ihre Anwendung das nächste Mal ausgeführt und die Weiterleitung aufgerufen wird.

Manuelle Weiterleitung

So können Sie Treffer manuell senden, z. B. wenn Sie wissen, dass die Gerätefunkschnittstelle bereits zum Senden anderer Daten verwendet wird:

GoogleAnalytics.getInstance(this).dispatchLocalHits();

Hintergrund-Weiterleitung

So aktivieren Sie die Hintergrundweiterleitung bei Apps, die auf Geräten von Drittanbietern ausgeführt werden. Führen Sie dazu in der Konfigurationsdatei ApplicationManifest.xml folgende Schritte aus:

  • Holen Sie die Berechtigung WAKE_LOCK ein.
  • Registrieren Sie sich AnalyticsReceiver.
  • Registrieren Sie sich AnalyticsService.

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>