Количество сеансов умножается, когда я использую Google Analytics Android SDK v4

В качестве моего приложения количество сеансов было около 1000-2000, когда я использовал Google Analytics Android SDK v3. Введите описание изображения здесь

Но когда я обновляюсь с v3 до v4, количество сеансов увеличивается до 4000-5000. Введите описание изображения здесь

Это global_tracker.xml:

<?xml version="1.0" encoding="utf-8"?> 

 <!-- Enable automatic Activity measurement --> <bool name="ga_autoActivityTracking">true</bool> <!-- The screen names that will appear in reports --> <string name="ga_trackingId">xx-xxxx-xx</string> 

И это то, что я сделал в файле Application.java:

 public class ABCApplication extends Application { ... private static Tracker t; ... public synchronized Tracker getTracker() { if (this.t == null) { GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); this.t = analytics.newTracker(R.xml.global_tracker); } return t; }} 

И это файл MainActivity.java:

 public class MainActivity { @Override public void onStart() { super.onStart(); Tracker t = ((ABCApplication) this.getApplication()).getTracker(); t.send(new HitBuilders.EventBuilder().setCategory("app").setAction("app_launch") .setLabel("start_google_analytics").build()); } ...} 

В чем причина этой проблемы? И как я могу это решить?

Solutions Collecting From Web of "Количество сеансов умножается, когда я использую Google Analytics Android SDK v4"

Как мы исследовали, основной причиной этой проблемы является автоматическое отслеживание активности. Когда автоматическое отслеживание активности отключено, GA закроет сеанс пользователя после того, как прошло 30 минут после последнего события. Если включено автоматическое отслеживание активности, GA завершит сеанс после того, как приложение войдет в фоновый режим или пользователь выйдет из приложения. Затем запуск приложения за короткий промежуток времени создаст новый сеанс в GA.

Возможно, это имеет какое-то отношение к настройке тайм-аута

Попробуйте настроить это в xml:

 <resources> <integer name="ga_sessionTimeout">300</integer> </resources> 

https://developers.google.com/analytics/devguides/collection/android/v4/sessions

Добавьте это в свой манифест:

 <!-- Optionally, 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"/> 

Я только что провел предварительное тестирование, но после того, как я добавил это, кажется, что он снова сообщает сеанс и продолжительность. Фрагмент кода, взятый из: https://developers.google.com/analytics/devguides/collection/android/v4/#manifest