根据Google Analytics(分析)的条款,您需要为用户提供选择退出跟踪的选项。但是我觉得,关于如何执行此操作的文档尚不十分清楚。这是我到目前为止所获得的。
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
Tracker t = analytics.newTracker(R.xml.tracker);
t.enableAdvertisingIdCollection(false);
t.enableAutoActivityTracking(false);
t.enableExceptionReporting(false);
这将禁用所有跟踪,包括此类事件。
t.send(new HitBuilders.EventBuilder()
.setCategory("category")
.setAction("test")
.setLabel("label")
.build());
如果不是,如何在用户设备上运行期间完全禁用跟踪?
最佳答案
您需要使用GoogleAnalytics.getInstance(this).setAppOptOut(true);
。
在Google Analytics(分析)文档(1)中,有一个带有共享首选项的简单示例。
SharedPreferences userPrefs = PreferenceManager.getDefaultSharedPreferences(this);
userPrefs.registerOnSharedPreferenceChangeListener(new SharedPreferences.OnSharedPreferenceChangeListener () {
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equals(TRACKING_PREF_KEY)) {
GoogleAnalytics.getInstance(getApplicationContext()).setAppOptOut(sharedPreferences.getBoolean(key, false));
} else {
// Any additional changed preference handling.
}
}
});
注意:这与在测试/开发期间禁用Google Analytics(分析)不同。如果您的目标是在测试/开发过程中禁用,请使用(2)
GoogeAnalytics.getInstance(this).setDryRun(true);