在我的iOS应用中,我正在向Firebase发送事件,如下所示:
Analytics.logEvent(event, parameters: [
AnalyticsParameterItemID: id,
AnalyticsParameterItemName: name,
AnalyticsParameterContentType: type,
])
例如,我可以发送事件complete_review
,其ID为12
代表屏幕。这似乎运作良好,并且在Firebase / Google Analytics(分析)仪表板中看到了事件数据。
但是,我不知道如何根据这些参数(例如id
,name
或type
)进行过滤。
例如:为了说明这一点,我目前有:"There are 2000 completed reviews"
...,但我真的想要"there are 500 completed reviews of id 1, 100 of id 2, 300 of id 3 ..."
。
我从documentation看到应该找到一个“编辑参数报告”链接,但是它似乎没有出现,我只是看到一个“标记为NPA”按钮:>
现在看来,唯一的解决方案是使用事件名称。这意味着我将发送complete_review
并发送大量不同事件,而不是将id
设置为12,将complete_review_id_12
设置为12,然后导出它,然后使用自定义脚本重新解析它。 。这感觉很糟糕,所以我想知道是否有人有更好的主意。
答案 0 :(得分:0)
除非您在FirebaseScreenReportingEnabled
中将false
设置为Info.plist
,否则Firebase会自动跟踪屏幕。
要获取报告中的最大详细信息,请记录对您的应用及其指定参数有意义的建议事件。这也可以确保您从最新的Google Analytics(分析)功能中受益。
您可以找到这些事件的完整列表here。
因此,您应该将此代码用于具有自定义值的屏幕跟踪:
Analytics.logEvent(AnalyticsEventScreenView,
parameters: [AnalyticsParameterScreenName: "ScreenName",
AnalyticsParameterScreenClass: "ScreenViewController",
"custom_value":customValue])
过滤自定义值在我的仪表板中非常有用。
对于记录自定义事件,您应该使用:
Analytics.logEvent("custom_event", parameters: ["custom_value":customValue])
答案 1 :(得分:0)
好吧,在Firebase中,您最多可以将30个事件标记为转化,仅此而已。如果您想查看每个事件的每个ID的特定数据,则必须进入BigQuery。一开始,BigQuery看起来似乎令人生畏,但它与具有一些甜美功能的任何其他数据库一样,即unnest()
,可用于基于ID过滤事件。
默认情况下,Firebase每24小时将其数据导出到BigQuery一次,因此您的数据就在那里了,现在,要按照期望的方式解析数据是一个问题。幸运的是,您可以将此数据导出为JSON,XML或表格式,以便可以按需使用它,包括应用内。这是我用来在BigQuery中按ID解析和计数事件的示例。
您可以通过访问链接https://console.cloud.google.com/bigquery?project=来访问BigQuery,您可能需要在左上角选择项目。
#standardSQL
SELECT DISTINCT
// UNNEST() allows you to get a specific value from your nested
// parameters. In this case I'm getting value.int_value and value.string_value.
(SELECT value.int_value FROM UNNEST(event_params)
WHERE key = 'some_ID') AS ID,
(SELECT value.string_value FROM UNNEST(event_params)
WHERE key = 'some_title') AS Title,
COUNT(1) Count
// INFO: If you build a query your last line will have the date as
// .events_20201015 and it will only query for that day. Replace the
// 20201015 with a " * " to filter on ALL events.
FROM `your_table_name.analytics_243434300.events_*` t
WHERE
event_name = 'your_event_name'
GROUP BY ID, Title
这将返回一个表或JSON,具体取决于您的偏好,该表或JSON包含每个唯一eventID的计数以及要标识该事件的数据。如果您决定采用仪表板路线并应用转化,那么更新将需要24小时,因此不要立即获得结果。