我在我的应用中使用Google Analytics(分析),它可以正确使用。但是,如果我每天有100个活跃用户,然后我发送通知,则我将1000个连接用户的峰值计为“活动”。
我不知道是否有一种简单的方法可以防止这些用户被视为活动用户。 他们中的大多数人不会打开通知,我不希望他们算作活动。我想只计算打开应用的用户,而不是所有收到通知的用户。
我在发送的通知中使用“正文”字段,并在应用中创建自定义通知。
是否可以删除这些“有效”用户?
非常感谢!
答案 0 :(得分:2)
每当您的应用收到新通知时,都会调用应用OnCreate()
方法。
不仅是通知,即使您订阅了ACCESS_WIFI_STATE,ACCESS_NETWORK_STATE,RECEIVE_SMS,RECEIVE_BOOT_COMPLETED等系统事件,也会调用Application OnCreate()。
因此,在您的应用OnCreate()
中,请勿进行任何与Google Analytics相关的调用。
这将初始化您的GA并开始事件跟踪。
删除应用OnCreate()
中的Google Analytics相关代码,以防止不必要的事件跟踪。
<强>更新强>
https://developers.google.com/analytics/devguides/collection/android/v4/advanced
getInstance(上下文上下文)
获取 GoogleAnalytics 实例,并在必要时创建它。
围绕这个实现的多种方式;我建议你用以下方法解决问题。正如文档所述,只有在需要时才准备GoogleAnalytics实例。
将以下代码保留在Application类中,以便mTracker
实例在整个应用程序生命周期内保持活动状态。
// Inside Application class
private Tracker mTracker = null;
public synchronized Tracker getDefaultTracker() {
if (mTracker == null) {
// Prepare the GoogleAnalytics instance, only when it is needed.
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
mTracker = analytics.newTracker(Config.GA_TRACKING_ID);
mTracker.enableAutoActivityTracking(true);
mTracker.enableExceptionReporting(true);
mTracker.setSessionTimeout(SESSION_TIMEOUT);
}
return mTracker;
}
希望这会对你有所帮助..