Firebase + GTM + GA 实施问题

sno*_*ykz 4 google-analytics firebase google-tag-manager

我正在使用 iOS Swift 3 并尝试在 Firebase 中跟踪屏幕视图并使用 GTM 将这些数据推送到 GA。

我的问题是我无法从推送到 GA 的“screen_view”事件中获取屏幕名称。

在 firebase 中,初始自动屏幕视图命中没有屏幕名称,只有屏幕类,所以我使用 Analytics.setScreenName 来设置屏幕名称并覆盖屏幕类。

然而,这会导致 Firebase 中的两次点击,一次没有屏幕名称自动触发,另一次使用屏幕名称手动触发。

另外,我想将事件中的屏幕名称作为屏幕视图类型传递给 GA。我将 GTM 中的 screenName 字段设置为一个变量。

我已经为变量尝试了各种事件参数

  • “firebase_screen”:导致在 GA 中未找到和(未设置)
  • “_sn”:在 xCode 调试中导致“无效的事件参数”

所以我猜所有以 _ 开头的参数都保留在 Firebase 中。那么如何将保留的事件参数从 firebase 获取到 GA 中。例如,我可能想将应用程序版本存储在某个自定义维度中。

这里最大的问题是屏幕名称在从 GTM 到 GA 的屏幕视图中没有出现。

Jac*_*ack 5

In Google Tag Manager you'll want to set the following:

Tag type: Universal Analytics (Google Analytics) Track Type: Screen View

Field Name: screenName Value: [the variable I've identified below]

Trigger: Fire on "Event Name" contains screen

** Note the Trigger might be better as matches "screen_view", but I haven't had a chance to test

Variable:

Variable Type = Event Parameter

Event Type = Custom Parameter

Event Parameter Key = _sn
Run Code Online (Sandbox Code Playgroud)

Other Things Make sure the Analytics.setScreenName is working and in ViewDidAppear as that fills the _sn parameter.

Xcode Debug Example In Xcode you should see something such as:

 firebase_screen_id (_si) = 4233194112313113131331;

 firebase_screen_class (_sc) = ViewController;

 firebase_screen (_sn) = Home View;

 firebase_realtime (_r) = 1;

 firebase_debug (_dbg) = 1;

 firebase_event_origin (_o) = auto;
Run Code Online (Sandbox Code Playgroud)