Titanium 应用程序 - Google 分析提供了活跃的使用情况,但处于后台。怎么修?

Titanium app - Google Analytics gives active usage but is in background. How to fix?

我们的应用程序使用 Google 分析 (https://github.com/benbahrenburg/Ti.GA),但我们注意到我们实际可以查看的数据是不真实的。

我们对应用程序的使用比应有的要多得多。我们认为这是因为我们的应用程序使用 Apple Healthkit 的后台模式获取 - 这使得应用程序恢复并将数据发送到后端。

我们刚刚直接在 app.js 中放置了 GA 模块的初始化脚本,但也许这不是实现它的方法?

我想如果应用程序实际处于活动状态并由用户打开,我们应该初始化 GA 脚本。但是我们如何检测并做到这一点呢?

有没有什么方法可以确定用户是否打开了应用程序,如果用户恢复了应用程序,继续跟踪 GA 事件?

您应该只触发 pageviews/screenviews 和其他使用 windows 的 postlayout 事件的事件。

在 app.js 的后台初始化 Ti.Ga 没问题,只要它不发送任何东西。因此,如果您的应用程序来自后台,那么这样做似乎是不正确的。

我建议为 Ti.Ga 编写一个包装器库并调用该库以将数据发送到 Google Analytics。在该库中,当从您的应用程序接收数据时,检查它是否已经初始化,如果没有,则初始化它。不在 app.js