我认为分析可以通过查看最后一个屏幕视图来获取事件的屏幕名称。但事实似乎并非如此。
不,事实并非如此。全部data http://cutroni.com/blog/2014/02/05/understanding-digital-analytics-data/您发送到 Google Analytics 的范围仅限于User, a Session, or a Hit(其中每个点击都属于一个会话,每个会话都属于一个用户)。
对于用户级别的数据(例如客户ID https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId), 谷歌分析is能够将该数据应用于该用户的所有会话和所有点击,但在以下情况下屏幕名称 https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#screenName和事件数据(例如活动类别 https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#eventCategory and 事件动作 https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#eventAction),这些都以命中级别为范围,因此仅适用于它们发送的命中。
大部分的跟踪库 https://developers.google.com/analytics/devguides/collection/(包括analytics.js以及Android和iOS SDK)有一个概念tracker https://developers.google.com/analytics/devguides/collection/analyticsjs/creating-trackers,这是一个可以存储数据并通过以下方式将数据发送到 Google Analytics 的对象测量协议 https://developers.google.com/analytics/devguides/collection/protocol/.
如果您想要将特定屏幕名称与用户在该特定屏幕上时发生的所有事件相关联,您还需要发送该屏幕名称以及所有事件点击。为了方便起见,跟踪器对象允许您set https://developers.google.com/analytics/devguides/collection/analyticsjs/accessing-trackers它们上的数据,然后该数据将与所有后续点击一起发送,因此在您的情况下,您需要在发送任何事件点击之前在跟踪器上设置屏幕名称。
以下是使用analytics.js 的示例实现:
ga('create', 'UA-XXXXX-Y', 'auto');
// Sets the `screenName` field to "Home Screen" for this
// and all subsequent hits.
ga('set', 'screenName', 'Home Screen');
// Sends a screenview hit for "Home Screen"
ga('send', 'screenview');
// Sends an event hit. Since the `screenName` field was
// already set on the tracker, that data will get sent
// with this hit as well.
ga('send', 'event', 'Navigation Links', 'click', '/about');
Note:所有链接均指向analytics.js 文档页面,但这些概念也适用于Android 和iOS SDK。