Firebase Analytics 究竟如何处理会话持续时间/超时?

2024-01-08

我第一次使用 Firebase Analytics 在 Android/iOS 应用程序中实现一些基本的使用情况统计信息,但文档对我来说对于如何准确计算会话持续时间、会话如何超时以及 24 小时似乎有点模糊观察结果的周期无助于通过试错来理解。

我现在只对一个非常简单的统计数据感兴趣——用户在应用程序中花费的时间。当应用程序“最小化”/“在后台”时到底会发生什么 - 这算作活跃使用还是与应用程序关闭相同 - 现在并不那么重要,但如果您在这方面需要添加一些内容请根据问题的上下文进行操作。

据我了解,这样一个简单的统计数据应该可以通过 Firebase Analytics 开箱即用,因此我目前没有使用任何自定义事件或任何比简单地将 Firebase Analytics 链接到项目中、添加配置文件更奇特的东西,并调用 FirebaseAnalytics.getInstance(this);在 Android 和 [FIRApp 配置] 上;在 iOS 上。

我看到first_open、session_start 和app_remove 事件按预期显示在控制台中,仪表板中显示了一些聚合会话数据等,而且我还知道有一个可配置的会话超时。

但我不清楚的是,用户会话究竟何时过期 - 只要应用程序打开,Firebase 是否会自动保持其打开状态,或者我是否需要确保发布一些人为的“保持活动”事件以防止用户当用户仍在实际使用该应用程序时,会话不会过期。

假设如下:

  1. 我没有使用 Firebase 发送显式自定义事件,因为这不是 应用程序明确要求。
  2. 在应用程序的单次运行期间,我只接触 Firebase 一次 - 在启动时初始化它。
  3. 用户在应用程序中停留很长时间(假设为 2 小时 - 比默认的 30 分钟会话超时长得多),而不与之交互 - 例如阅读某些内容、观看视频等,这些都不会生成 Firebase 可以看到的任何事件,但应用程序会阻止屏幕锁定,应用程序仍处于前台。

对于用户来说,这算作一次 2 小时的会话吗?由于会话在 30 分钟后过期并且不会生成任何事件来使其保持活动状态,因此它是否仅算作 30 分钟会话?还会发生别的事情吗?

额外问题:如果用户退出应用程序的时间短于/长于会话超时,会发生什么?

额外奖励问题:如果不是从应用程序退出,而是简单地将其放入后台,是否会发生某些变化?

Thanks!


快速回答:您所描述的场景将导致一次 2 小时的会话。

会话基于应用程序的活动是当前活动的时间。无需发送事件;从活动恢复到暂停的时间算作参与时间。在一个小时的连续参与结束时,将记录参与事件,但这并不会结束会话。当连续一段时间(默认为 30 分钟)应用程序的活动都不是当前活动时,会话就会过期。 如果用户退出应用程序的时间短于会话超时,然后重新启动应用程序,则会话将继续。如果用户退出应用程序的时间超过会话超时,则会话结束。退出应用程序和将其置于后台之间没有任何变化。如果这不是用户正在查看的内容,则不会被视为应用程序正在运行的参与度。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebase Analytics 究竟如何处理会话持续时间/超时? 的相关文章

  • 无法加载请求的类:会话

    我的配置文件看起来像这样 gt config sess cookie name ci session config sess expiration 7200 config sess expire on close TRUE config s
  • 安全灵活的跨域会话

    我有一个问题希望你能帮忙解决 假设我在一家名为 Blammo 的假设公司工作 我们有一个名为 Log 的假设产品 我正在尝试建立一个系统 人们可以登录 logfromblammo com 并订购我们的一些产品 然后当他们准备好购买时 前往
  • SQL Server 超时是否被记录?

    SQL Server 超时 特别是 SELECT 查询 是否记录在 ERRORLOG 文件中 背景是一位客户的网站偶尔会出现 请求超时 消息 我认为超时是由数据库超时引起的 相关错误日志中没有超时错误 不可以 您需要使用 SQL Profi
  • 将 List 保存到 ASP.NET 中的会话

    购物车项目保存在 SQL 数据库中 我想将所有 CartItems 放在一个 List 中并转移到 Instance Items The Instance变量正在保存到会话中 代码如下 public class ShoppingCart p
  • 完全替换 ASP.Net 的会话

    ASP Net 会话对于传统的 WebForms 应用程序来说似乎很完美 但它们所做的一些事情对于现代 AJAX 和 MVC 应用程序来说是一个严重的问题 具体来说 访问 ASP Net 提供程序只有 3 种方法 锁定读和写 默认 会话被锁
  • 如何在 Express 4.0 中发送 Flash 消息?

    因此 我的 Web 应用程序需要身份验证 并且我有一个注册页面 如果用户尝试使用数据库中已有的电子邮件进行注册 我想向他们显示一条错误消息 我正在尝试在 html 端使用此代码来执行此操作 div class alert alert dan
  • Laravel,2 个域中的 2 个项目同一会话

    我正在 2 个不同的域 domain1 tld 和域 2 tld 中创建 2 个项目 domain1 tld 是主要事件生成器页面 domain2 tld 是其事件之一 我想共享相同的会话 它们实际上共享相同的数据库和相同的 apache
  • PHP 会话中的数据错误

    我对网上商店进行了以下设置 当用户登录时 通过 AJAX 调用脚本 该脚本根据 SOAP Web 服务验证用户数据 并返回用户数据 当用户登录时 用户数据保存在 PHP 会话中 用户数据 仅通过 SOAP 检索 而不由商店存储 我使用默认的
  • Go中如何自定义http.Client或http.Transport超时重试?

    我想实现一个自定义http Transport对于标准http Client 如果客户端超时 它将自动重试 附 由于某种原因 习俗http Transport is a 一定有 我已经查过了hashcorp go retryablehttp
  • PHP if in_array 表示多个值

    我有一个由 3 到 12 个值之间的任意位置生成的数组 它根据帐户信息生成该数组 result ad gt user gt groups user username 我想检查这个数组是否有多个值 大约 4 或 5 个 如果其中有任何一个值
  • 使用 ASP.NET 2.0 处理过期会话的最有效方法是什么

    在我们正在建设的网站上 当用户的会话结束时 我们需要能够将用户重定向到默认页面 乍一看 我们使用 Session End 和 Response Redirect 来完成这项工作 Sub Session End ByVal sender As
  • 如何在 bash 中结合超时和 eval 命令

    为了执行存储在变量中的命令eval使用命令 gt a echo e a nb wc l gt eval a 2 但如何才能与它结合起来呢 timeout命令 我尝试过以下操作 这给了我错误的输出 gt timeout 10 a a b wc
  • PHP session.cookie_secure:设置为 true 时禁用会话

    当我设置以下配置时 ini set session cookie secure 1 我的整个应用程序的会话被禁用 我无法再写入或读取会话变量 sessionName us session name sessionName ini set s
  • RestSharp RestClient的默认超时值是多少?

    任何人都知道默认超时值休息锐利 https github com restsharp 休息客户端 RestSharp 在底层使用 HttpWebRequest 它有一个默认超时 https msdn microsoft com en us
  • 错误 11 秒后等待 Protractor 与页面同步超时

    我的量角器测试有问题 我的角度应用程序使用 timeout 不断从服务器轮询某些内容 不幸的是 当我运行测试时 这会导致以下错误消息 There was a webdriver error Error Timed out waiting f
  • 跨多个域的 ASP.NET 会话

    是否有合适的 NET 解决方案来在多个域上提供持久服务器会话 即 如果该网站的用户在 www site1 com 下登录 他们也将在 www site2 com 下登录 安全是我们正在开发的程序的一个问题 Thanks 它是否需要在会话中
  • 当用户再次访问同一页面时保持登录状态?

    目前我正在使用会话来登录用户 但是当我关闭浏览器并再次打开它时 我必须再次登录 你如何让用户在 2 周内保持登录状态 那么是通过cookie吗 那么您想要 在这台计算机上记住我 选项吗 这是一种与语言无关的方法 创建一个至少包含以下内容的数
  • 如何在 Firebase Analytics 事件中报告参数

    我用过Fabric with iOS在此之前 在同一分析事件中报告自定义参数非常容易 如下所示 Answers logCustomEvent withName saved border customAttributes image inde
  • 在会话 cookie 中存储大量数据会产生什么影响?

    谁能解释一下在会话中存储大量数据的缺点或给我指出一些阅读材料 我也很感兴趣在会话中存储数据和从数据文件读取数据之间是否有任何区别 如果您在会话中存储大量数据 则输入 输出性能会下降 因为会有大量读取 写入 默认情况下 PHP 中的会话存储在
  • 休眠会话已关闭

    当我调用方法 session begin 事务时 如下所示 session factory is instantiated via a bean Session session this getSessionFactory getCurre

随机推荐

  • 如何为 Android 支持库启用 javadoc?

    当使用 Android 支持库来实现兼容性并尝试查看 javadoc 时 例如 FragmentTransaction 我收到以下错误 因为没有关联的 javadoc 文件 android support v4 app FragmentTr
  • 如何使用 JSTL 对表示 URL 路径的字符串进行编码?

    使用 JSTL 对表示 URL 路径 而不是请求参数 的字符串进行 URL 编码的最佳方法是什么
  • Django 模型、信号和电子邮件发送延迟

    我已经向我的模型添加了一个信号 一旦保存模型 通过models signals post save connect信号和send mail用于发送电子邮件 这个想法仍然会给用户带来延迟 当他们在网站上保存模型时 他们必须等到所有这些电子邮件
  • 如何通过 UiPath 读取 Excel 工作表并将单元格值放入不同的文本字段中?

    如何通过 UiPath 读取 Excel 工作表并将单元格值放入不同的文本字段中 我有一张Excel表格 如下 我已阅读 Excel 内容并稍后迭代内容 我将内容存储在Output Data Table如下 读取范围 输出 数据表 CV数据
  • pyhive、sqlalchemy无法连接到hadoop沙箱

    我已经安装了 pip install thrift pip install PyHive pip install thrift sasl 和 自从pip install sasl我下载失败sasl 0 2 1 cp27 cp27m win
  • abs(unsigned long) 有任何意义吗?

    我遇到过这段代码 我的分析器偶然将其报告为瓶颈 include
  • MVC 3 在哪里加密用户的密码?

    我有自己的密码加密 dll 用于在用户登录时检查用户的密码 这在我的用户实体中引用 现在我已经为用户创建了注册功能 除了密码尚未加密之外 该功能运行良好 我的问题很简单 我应该把新用户密码的加密放在哪里 我不确定 因为我知道用户的密码不应该
  • 我应该在注入的 Angular 服务上使用只读而不是公开它们吗?

    今天我进行了一次讨论 我的一些同事说他们像这样注入 Angular 服务 constructor readonly language I18nService 他们说他们这样做是因为它可以防止我的组件的使用者更改注入的服务 有点像这样 Com
  • Python 类构造函数(静态)

    Python 是否有类构造函数的机制 即每当首次引用类时 而不是创建该对象的实例时 调用的函数 我知道这在其他一些语言中也存在 但我还没有在Python中遇到过 基本上 我想初始化该函数中的一些静态属性 我在下面举了一个我所期望的例子 当然
  • 如何在同一页面上加载多个版本的 jQuery 插件?

    我正在尝试使用最新版本的时间选择器插件 http trentrichardson com examples timepicker 用于 jQuery UI 另一个库已经在早期版本加载了它 1 0 4 但我想使用最新的 1 4 5 版本 在源
  • 使用 Spotify Web API / Playback SDK 检测曲目播放结束

    使用 Spotify Web API 和 Web Playback SDK 有人知道检测曲目播放何时完成 即歌曲结束 的好方法吗 我知道一些名为player state changed在Web Playback SDK中 但是事件中提供的数
  • JavaScript 中二维数组的切片/部分

    我需要用二进制代码获取二维数组的切片 我需要指定我想从哪里开始以及在哪里结束 现在我有这段代码 但我很确定它是错误的 var slice var endx 30 var startx 20 var starty 10 var end 20
  • 如何用Java流畅地构建JSON? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话
  • 使用 Delphi XE5 for Android 创建 WifiConfiguration

    我正在尝试为 Android 创建 WifiConfiguration 可以设置所有其他属性 但如果我尝试设置 SSID 或 BSSID 则会出现分段错误 11 并且应用程序和 Delphi 会挂起 var WIFIConfig JWifi
  • Qt4:QAbstractTableModel 拖放,不带 MIME

    我有一个继承 QAbstractTableModel 的类 并在 QMap 中保存一些复杂的结构 这QVariant data QModelIndex index 方法只返回一个枚举 它描述自定义项目委托应如何绘制单元格的内容 我想在这个模
  • 向 Javacard 发送扩展 APDU

    我有一个 ACR38 智能卡读卡器和一些符合 GP 规范 02 的 Javacard 2 1 1 据我所知 有两种APDU 短APDU APDU 与LC or and LE比 短255 and 扩展APDU APDU 与LC or and
  • Haskell 中标识符中的撇号

    我在互联网上找到了这段代码片段 digits 0 0 digits n digits n where digits 0 ds ds digits n ds let q r quotRem n 10 in digits q r ds sumO
  • 如何解析 Facebook 数据

    我在正确解析 Facebook 数据时遇到一些问题 我正在努力实现应用程序的一部分 以允许用户在应用程序中选择和使用他们自己的 Facebook 照片之一 我已经让 Facebook 登录 注销代码正常工作 并且我目前正在获取令牌 登录后
  • 如何缩进预处理器语句?

    当有许多预处理器语句和许多 ifdef 级联时 很难获得概览 因为它们通常不缩进 例如 ifdef WIN32 include
  • Firebase Analytics 究竟如何处理会话持续时间/超时?

    我第一次使用 Firebase Analytics 在 Android iOS 应用程序中实现一些基本的使用情况统计信息 但文档对我来说对于如何准确计算会话持续时间 会话如何超时以及 24 小时似乎有点模糊观察结果的周期无助于通过试错来理解