2

我们使用 v3 Google Analytics iOS SDK。我们目前在生产中使用谷歌的自动会话管理。应用程序上的每个屏幕都会被跟踪。我的平均会话时间是 25 分钟。会话时间要么非常低要么非常高。30% 的会话是 0-10 秒,60% 是 181 秒以上。

谷歌的文档说,他们计算每个屏幕视图,即使用户在应用程序处于后台后返回同一屏幕也是如此。我根据在受控环境中的测试验证了这是真的。首先,我使用这个向应用程序添加了手动会话跟踪. 下午 12 点 36 分,我第一次在全新的 Google Analytics(分析)应用程序 ID 中打开了该应用程序。然后我把它放在后台。然后再次打开它并再次将其设置为背景。15 分钟后,我的正确会话数为 2,屏幕数为 2。然后我取消了手动会话计数,并在下午 12:55 又做了两个会话。大约 10 分钟后,我的会话计数为 3,而我的屏幕计数准确为 4。自动跟踪的会话计数似乎减少了 1,但偏低。鉴于此测试,我无法理解生产中发生了什么。

从逻辑上讲,每个会话都必然需要至少一个屏幕视图。那么会话数怎么会大于生产中的屏幕数呢?我看到的是会话数大约是屏幕数的两倍。这怎么可能?

4

1 回答 1

1

所以事实证明,如果你使用后台获取或后台定位服务,didFinishLaunchingWithOptionsAppDelegate 方法会被调用——谷歌分析库会告诉你将会话启动代码放在那里。如果您在 . 周围对该代码进行门控UIApplicationState,则可以避免幻像会话。(在此处查看更多信息:http: //mikethinkingoutloud.com/issues-with-google-analytics-and-ios-7-background-fetch/

于 2015-10-30T19:58:12.930 回答