Google Analytics自动活动检测 - 您可以从中排除单个活动吗?

时间:2015-07-07 21:38:19

标签: android google-analytics google-analytics-v4 google-analytics-sdk

自动活动检测非常棒 - 除了MainActivity是一堆带有导航抽屉(如Google Play音乐或Play商店)的不同片段。我正在使用手动屏幕命中来跟踪该活动中的碎片。

因此,MainActivity的自动屏幕显示无意义并污染了我的统计数据。我可以以这种方式排除我的MainActivity被排除吗?

参考:https://developers.google.com/analytics/devguides/collection/android/v4/screens#automatic

1 个答案:

答案 0 :(得分:0)

只需将enableAutoActivityTracking(false)设置为活动中获得的Tracker实例。

假设您按照the official docs中的说明在Application类中创建了getDefaultTracker()方法,则可以为可以更改自动跟踪的应用程序活动创建父类按需行为:

public abstract class ParentActivity extends Activity {

    Tracker mTracker = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getTracker();
    }

    /* Obtains Google Analytics Tracker for this activity */
    Tracker getTracker() {
        if (mTracker == null) {
            AnalyticsApplication application = (AnalyticsApplication) getApplication();
            mTracker = application.getDefaultTracker();
            // Enable or disable auto-tracking for this activity
            mTracker.enableAutoActivityTracking(shouldAutoTrack());
        }
        return mTracker;
    }

    /* Defines whether this activity should enable auto-track or not. Default is true. */
    protected boolean shouldAutoTrack() {
        return true;
    }
}

您的主要活动只需扩展ParentActivity并覆盖shouldAutoTrack方法以返回false:

public class MainActivity extends ParentActivity {

    /* Disable auto-tracking for this activity */
    protected boolean shouldAutoTrack() {
        return false;
    }

}