使用适用于Android的Google Analytics(libGoogleAnalytics.jar)似乎存在许多问题。
- GoogleAnalyticsTracker保留对GoogleAnalyticsTracker实例的静态引用,该实例反过来保留对传递给start()的Context的强引用,从而防止该上下文被垃圾收集(基本上是内存泄漏)。
- 目前还不清楚如何在各种活动中正确跟踪用户的会话。在每个活动的onCreate()中调用GoogleAnalyticsTracker.start()会为每个活动生成一个新会话。将start()/ stop()仅移动到单个“master”活动不起作用,因为后续活动可能会在调用stop()后尝试跟踪网页浏览,从而导致NullPointerExceptions。将start()调用移动到Application.onCreate()并将stop()移动到Application.onTerminate()会导致:A)非常长寿的会话,因为不经常调用Application.onTerminate(),并且B)虚假会话启动你有像定期运行的后台服务这样的东西。
- 无法记录名称包含空格的事件。
醇>
库的documentation稀疏,并未显示多活动应用程序的示例。
环顾StackOverflow和其他网站,我一直在努力了解使用GA for Android时的最佳做法,特别是与上述问题相关。有没有人弄清楚这一点?
另外,我还没有提到其他哪些问题?