0

我想报告会话持续时间,但它没有出现在 AWS Mobile Analytics 控制台的标准图表列表中。

当应用程序进入后台时,我希望能够开始会话,然后计算间隔。

这是(或)正确的方法吗?或者这对我来说已经可用了吗?

4

1 回答 1

2

您是正确的,该 KPI 在移动分析控制台中不可用。

而且您的想法似乎也很正确。会话持续时间的问题在于,它可以在移动应用程序的上下文中以多种方式解释,因此您必须决定一些对您有意义的业务规则。

至于获取此指标的选项,如果您在控制台中启用了自动导出到 RedShift,那么您可以从以下基本查询开始:

SELECT session_id
       , DATEDIFF(second 
                , MIN(event_timestamp)
                , MAX(CASE WHEN event_type = '_session.stop' 
                          THEN session_stop_timestamp 
                           ELSE event_timestamp END)
                ) as session_duration
 FROM awsma.v_event
GROUP BY session_id

如果您没有启用自动导出并且不想走这条路,另一种方法是发出一个自定义事件,其中包含您在应用程序暂停时在应用程序中计算的会话持续时间指标。如果您想处理应用程序崩溃和潜在的上下文切换,即用户暂停应用程序一小段时间(例如呼叫中断会话但用户立即返回应用程序),您还可以选择存储应用程序暂停时的时间戳,并且仅在恢复时发出会话持续时间 - 您可以在其中确定是否继续上一个会话或开始新的会话。

如果您决定采用自定义指标,最好对会话持续时间进行分段(例如以 1 分钟或 5 分钟为增量)。此外,虽然给定自定义指标的唯一值数量没有限制,但请注意其他限制,例如自定义事件总数或自定义属性值的值总数。

于 2016-08-10T17:39:43.520 回答