【问题标题】:Starting and closing Flurry session开始和关闭 Flurry 会话
【发布时间】:2013-02-12 04:53:12
【问题描述】:

我一直在看这里的一些其他问题,但我真的不明白一些原因。

我有一个包含大量活动的应用,以及 Flurry 分析 API 密钥。我希望快速会议成为一个完整的会议,而人们建议在每个活动中开始和停止会议。但是,这将导致 50 个乱舞会话/真实会话。

我将 onStartSession() 方法放在登录活动中,并在注销时放置 onStop。而且我在记录事件时遇到了一些问题,看起来它正在跳过它们。

对此有什么想法吗?

【问题讨论】:

    标签: android flurry


    【解决方案1】:

    您可以调用应用程序中每个活动的开始会话和结束会话。请注意,结束会话的调用必须与每次开始会话的调用相匹配。如果在前一个结束会话呼叫的 10 秒内发出开始会话的呼叫,则会话将恢复。会话长度、使用频率、事件和错误将继续作为同一会话的一部分进行跟踪。这确保了当用户在您的应用程序中从一个 Activity 转换到另一个 Activity 时,他们不会为每个 Activity 跟踪单独的会话,而是会有一个跨越多个 Activity 的单个会话。您可以使用调用 FlurryAgent.setContinueSessionMillis(long milliseconds) 更改 10 秒的默认值。请注意,对于 Android,最短超时时间为 5 秒。

    (完全披露:我在 Flurry 工作)

    【讨论】:

    • 非常感谢!我在活动中使用了 onStart 和 onEnd,但仅在某些活动中使用,因此会话因 10 秒以上不活动而中断。
    【解决方案2】:

    您需要一个包含在 Activity 生命周期中的 Flurry 会话。

    我可以看到您避免重复代码是子类化 Activity 类并覆盖 Flurry 会话需要启动和停止的回调,然后您的所有活动都会继承该新的 Activity 子类。

    另一种选择是只拥有一个高级活动,您可以在其中开始/停止乱舞,然后将其余功能从活动转移到片段。

    【讨论】:

    • 所以我不能忽略活动之间的 onEndSession 吗?我的应用程序结构包含一个 BaseActivity 子类,该子类从活动扩展,但使用它会导致单个真实会话中的大量会话(每次活动更改时会话新)
    • 不,很遗憾你不能忽略它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多