6

自動アクティビティ検出は優れています。ただし、MainActivityナビゲーション ドロワー (Google Play ミュージックや Play ストアなど) を備えたさまざまなフラグメントの束を除きます。そのアクティビティのフラグメントを追跡するために、手動で画面を打つことを使用しています。

したがって、私の自動画面ヒットMainActivityは無意味であり、統計を汚染します。MainActivityこの方法で追跡対象から除外することはできますか?

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

4

1 に答える 1

0

enableAutoActivityTracking(false)アクティビティで取得した Tracker インスタンスに設定するだけです。

公式ドキュメントgetDefaultTracker()に記載されているように Application クラスにメソッドを作成したと仮定すると、自動追跡動作をオンデマンドで変更できるアプリケーション アクティビティの親クラスを作成できます。

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;
    }

}
于 2016-05-03T11:54:33.723 に答える