如何为Google Analytics事件跟踪设置appVersion

时间:2016-04-08 19:54:05

标签: google-analytics event-tracking

当我尝试在Google Analytics中设置appVersion时,我的事件跟踪就会停止工作。具体来说,我尝试将应用版本包含在事件跟踪中,以便了解该应用的哪个版本会导致事件发生。

我尝试过像这样设置应用版本:

ga('set', 'appVersion', app.version);

我试过这样的事:

ga('send', 
   'event', 
   eventCategory, 
   eventAction, 
   {'page': pageName, 'appVersion' : app.version });

我还尝试了替代语法:

ga('send', 
   {'hitType' : 'event',
    'eventCategory' : eventCategory,
    'eventAction' : eventAction,
    'page' : pageName,
    'appVersion' : app.version});

如果我包含appVersion,则事件跟踪会停止工作。没有事件实时显示,并且第二天没有在“行为/事件”部分显示。 PageViews仍然有用。

根据评论中的要求,我正在编辑以添加我的事件跟踪代码。我尝试解决这个问题时经历了几个变化。这是目前的样子。

var app = {
    trackEvent: function (pageName, eventCategory, eventAction, optionalEventLabel, optionalEventValue) {

        var eventObject = {
            'eventCategory' : eventCategory,
            'eventAction' : eventAction,
            'optionalEventLabel' : optionalEventLabel,
            'optionalEventValue' : optionalEventValue,
            'page' : pageName,
        };

        console.log("app.trackEvent - " + JSON.stringify(eventObject));

        ga('send', 'event', eventObject);
    }
}

我使用类似的调用从很多地方调用此方法:

app.trackEvent("PageNameValue", "EventCategoryValue", "EventActionValue", "EventLabelValueIfIHaveOne", AnIntegerValueIfIHaveOne);

非常感谢任何帮助或建议。

修改... 我发现了以下似乎适用的错误报告:https://code.google.com/p/analytics-issues/issues/detail?id=366 bug报告者提到通过设置自定义维度来解决此问题。我会尝试一下。

3 个答案:

答案 0 :(得分:5)

这似乎是Google Analytics漏洞。有关详细信息,请参阅https://code.google.com/p/analytics-issues/issues/detail?id=366

根据错误报告人的建议,解决方法是使用您在Google Analytics控制台的“管理/自定义定义/自定义维度”部分中定义的自定义维度。

  1. 点击"新自定义维度"
  2. 输入姓名(我输入 customAppVersion
  3. 选择范围(我选择点击
  4. 点击创建
  5. 然后,Google会为您推荐代码示例,例如......

    var dimensionValue = 'SOME_DIMENSION_VALUE';
    ga('set', 'dimension1', dimensionValue);
    

    代码示例中唯一需要更改的是' dimensionValue'的值。所以我最终得到了以下代码。

    ga('create', 'UA-########-#', 'auto');
    ga('set', 'checkProtocolTask', null); // Disable file protocol checking (so that GA will work on Android devices)
    ga('set', 'dimension1', app.version);
    ga('send', 'pageview');
    

    在此之后,自定义维度将应用于Google Analytics记录的每个匹配,您可以使用该自定义维度在Google Analytics控制台中过滤结果。

答案 1 :(得分:3)

根据谷歌

  

由于appName字段必须与所有应用程序匹配一起发送,因此通常是这样   最好使用set命令在跟踪器上设置该字段,或者   或者,当创建跟踪器时:

ga('create', 'UA-XXXXX-Y', 'auto', {
  'appName': 'myAppName'
});

// The `appName` field is now set on the tracker, so
// screenview hits don't need to include it.
ga('send', 'screenview', {appVersion: '1.2'});

// Sending multiple parameters

ga('send', 'screenview', {appName: 'com.company.app', appVersion: '1.2'});

更多信息here

答案 2 :(得分:0)

如果您至少设置了“ appName”,它会起作用,这是在设置“ appVersion”之前先设置“ appName”和“ appId”的一种好习惯。

ga('set', 'appId', app.id);
ga('set', 'appName', app.id);
ga('set', 'appVersion', app.version);
相关问题