0

我們正在開發谷歌分析Android應用程式,我們已經看到,您可以通過添加自定義維度/指標到一個事件:谷歌Analytics(分析)和尺寸/度量PARAMS

t.send(new HitBuilders.ScreenViewBuilder() 
    .setCustomDimension(1, "premiumUser") 
    .build() 
); 

但據我所知,該自定義維度將在該事件中發送。有沒有辦法將它設置爲跟蹤器,這樣它會自動發送到所有事件/屏幕?舉例來說,像這樣:

t.set("cd<1>", "premiumUser"); 

另一個問題,我們必須添加:t.setScreenName(空)的片段/活動的每一個的onDestroy如果我們在onCreate方法發送setScreenName?

在此先感謝

回答

0

如果我們需要記錄在Analytics(分析)屏幕,我們需要在每一個onCreate

t.send(new HitBuilders.AppViewBuilder().setCustomDimension(cusDimensionId, dimensionValue).build()); 

沒有必要對onDestroy

添加 t.setScreenName(null)發送屏幕視圖

獲取跟蹤:

public synchronized Tracker getCustomDimensionTracker(TrackerName trackerId) { 
    if (!mCustomDimensionTrackers.containsKey(trackerId)) { 

     GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); 
     if (trackerId == TrackerName.CUSTOM_DIMENSION_TRACKER) { 
      Tracker t = analytics.newTracker(App.get().getResources() 
        .getString(R.string.google_analytics_key)); 
      mCustomDimensionTrackers.put(trackerId, t); 
     } 
    } 
    return mCustomDimensionTrackers.get(trackerId); 
} 
+0

但是自定義維度將僅發送給該事件,如果我們想在所有事件中發送自定義維度,該怎麼辦?我們可以做些什麼:t.set(「cd <1>」,「premiumUser」);? – FVod

+0

是否需要t.setScreenName(null)才能清除發送所有事件的屏幕名稱?如果我們忘記在某個活動上發送屏幕名稱,則會從我們需要的舊屏幕 – FVod

+0

發送事件。如果我們使用相同的跟蹤器,則可能會導致計數錯誤。它最終會不止一次地記錄一個維度。我已經體驗過它:D –

相關問題