android - 将 EasyTracker 与 FragmentActivity 和 ActionBarSherlock 结合使用

标签 android google-analytics actionbarsherlock

我目前在我的应用程序中使用 ActionBarSherlock,我希望实现 Google 的 EasyTracker 进行分析。

我已经看到 TrackedActivity 在生命周期的不同部分简单地调用几个函数(getTracker()、trackStartActivity(Context)、trackActivityStop(Context) 和 trackActivityRetainNonConfigurationInstance())。

因为我已经将 SherlockFragmentActivity 扩展为我的基类,所以我需要将这些调用包含在它们各自的生命周期部分中。我遇到的一个问题是以下调用:

@Override
public Object onRetainNonConfigurationInstance() 
{
     Object o = super.onRetainNonConfigurationInstance();

     // This call is needed to ensure that configuration changes (like
     // orientation) don't result in new sessions.  Remove this line if you want
     // configuration changes to for a new session in Google Analytics.
     EasyTracker.getTracker().trackActivityRetainNonConfigurationInstance();
     return o;
}

问题是这个调用在 FragmentActivity 中是最终的,所以我认为它不能被覆盖。

我应该如何处理轮换,以便新 session 不会扰乱服务器发送的数据?

此外,作为旁注,在将 ga_debug 参数设置为 true 的情况下调用 trackStartActivity(Context) 是否应该有 logcat 输出?

提前致谢:)

最佳答案

我找到的最佳解决方案是在 onSaveInstanceState 中添加一个 bool 标志,这样 session Activity 计数器就不会递增。考虑到所有事情都出奇地简单:)

关于android - 将 EasyTracker 与 FragmentActivity 和 ActionBarSherlock 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12925078/

相关文章:

android - ActionBarSherlock 中的 PopupMenu 等价物

java - MediaPlayer 音量问题-AudioStream 问题

android - 如何获取手机上所有已安装的应用程序?

android - 在Android中播放声音

javascript - 在 Ghost 博客中获取查看次数最多的帖子

android - 当 ActionBar 选项卡导航太长时如何停止显示为微调器?

android - Actionbarsherlock 开关操作栏覆盖模式以编程方式

Android studio 3 c++ 文件充满错误但编译正常

ios - Google Analytics 无法与 GTM 和 Firebase iOS 配合使用

php - 谷歌分析事件跟踪代码不工作