Android 在实时运行期间禁用google analytics跟踪

Android 在实时运行期间禁用google analytics跟踪,android,google-analytics-firebase,Android,Google Analytics Firebase,根据谷歌分析的条款,你需要向用户提供一个选择退出跟踪的选项。但我觉得,关于如何做到这一点,文档并不是很清楚。这就是我目前得到的 GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); Tracker t = analytics.newTracker(R.xml.tracker); t.enableAdvertisingIdCollection(false); t.enableAutoActivityTracking(false

根据谷歌分析的条款,你需要向用户提供一个选择退出跟踪的选项。但我觉得,关于如何做到这一点,文档并不是很清楚。这就是我目前得到的

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 documentation()中,有一个带有共享首选项的简单示例

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分析不同。如果您的目标是在测试/开发期间禁用,请使用()

GoogeAnalytics.getInstance(this).setDryRun(true);