我正在尝试使用 website of the respective SDK 上的信息将 Google Analytics 集成到我的 Android 项目中.但是,可用的文档非常少。我的项目有 6 个不同的 Activity ,我注意到使用网站上的方法会导致在 Google Analytics 中对每个打开的 Activity 进行一次独特的访问,即使它仍在同一个 session 中。显然,Google Analytics for Android 从不重复使用以前使用过的 session 。
他们的方法是在onCreate开始跟踪 Activity ,然后在onDestroy停止跟踪。我遇到的问题是,如果用户按下主页按钮而不是后退按钮, session 将保持 Activity 状态,因为 Activity 不会被销毁。因此,我选择在 onResume 和 onPause 中执行此操作,但这意味着在打开新 Activity 时会打开新 session 。
有谁知道真正跟踪多个 Activity 中的单个 session 的方法吗?
最佳答案
在研究了Activity的生命周期后,我得出了以下结论。
当从 Activity A 切换到另一个 Activity B 时,A 的 onStop 方法在 B 的 onStart 方法之后被调用。然后我所做的是每次在 onStart 方法中访问(静态)跟踪器时增加一个引用计数器.在 onStop 方法中,我会首先检查引用计数器是否为 0,如果是则停止跟踪器。在 onStop 方法结束时,我会减少引用计数器。
目前这似乎工作得很好,当应用程序有多个可作为入口点的 Activity 时也应该工作。
关于android - 使用多个 Activity 的 Google Analytics for Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3871070/