试图了解 Firebase screen_view 事件的 ViewController 焦点

Posted

技术标签:

【中文标题】试图了解 Firebase screen_view 事件的 ViewController 焦点【英文标题】:Trying to understand ViewController focus for Firebase screen_view event 【发布时间】:2021-07-06 17:29:50 【问题描述】:

我们正在尝试跟踪用户查看每个屏幕的时间量,但看起来容器视图控制器正在计时,而不是我们想要的子视图控制器。我认为问题在于容器视图控制器有焦点而不是子视图控制器,如何给子 VC 焦点以触发 Firebase screen_view 计时器?

【问题讨论】:

这是一个宽泛的问题;这取决于您的应用是如何编码的,您是自动跟踪屏幕还是在 viewDidAppear 事件中手动跟踪? 我只是在使用自动 Firebase 屏幕跟踪 (firebase.google.com/docs/analytics/screenviews) 再一次,清晰是 SO 的关键。您是否为要跟踪的每个屏幕使用单独的 UIViewController?如果没有,则需要手动完成。如果是这样,那么只要每个控制器都有焦点,就会记录 screen_view 事件。如果您的控制器没有获得焦点,那就是问题所在,您需要确定原因。如果您不知道,那么我们需要查看控制器是如何实例化和使用的代码。 How to create a Minimal, Complete, and Verifiable example 我使用的是同一个父 UIVC 的副本,每个屏幕都有不同的子 UIVC。据我所知,问题是容器视图控制器有焦点而不是子视图控制器,问题是如何给子 VC 焦点。 子 VC 是手动添加的,因此可能与 FB 中的某些内容没有被调用有关,但我的代码只是手动添加子 VC 的样板。 【参考方案1】:

在文档中,它说

如果您的应用为每个应用使用不同的 UIViewController 或 Activity 屏幕,Analytics 可以自动跟踪每个屏幕转换和 生成按屏幕细分的用户参与度报告。

所以换句话说,screen_view 事件显然不会为嵌套的 UIViewControllers 自动发送。

【讨论】:

不要忽视这一点如果您的应用对每个屏幕使用不同 UIViewController,Google Analytics(分析)可以自动跟踪每个屏幕转换我相信虽然它有成为强引用,因此它们不会被内存转储。

以上是关于试图了解 Firebase screen_view 事件的 ViewController 焦点的主要内容,如果未能解决你的问题,请参考以下文章

Google 大查询 - Firebase 分析 - 屏幕视图的封闭漏斗(参数)

我在 DebugView Firebase Analytics ios swift 中看不到自定义日志事件

Firebase Analytics:了解奇怪的用户参与度数字

Firebase 存储工件

Firebase 存储工件

如何通过 Firebase 云消息发送推送通知(快速入门)?