Google Analytics,Flutter,Cookie和通用数据保护法规GDPR

问题描述

根据《通用数据保护条例》(GDPR),用户必须在设置任何Cookie之前表示同意。

我在Flutter网站上使用google / firebase分析。当用户打开页面时,将立即存储两个cookie:_ga和_ga_SOMECODE。

我怎样才能使Google Analytics(分析)推迟这些cookie,以便我首先可以征得用户的同意,然后让他选择允许cookie来使用Google Analytics(分析)?或者拒绝两者?

我正在寻找这样的东西:

  • 在index.html

    // Initialize Google Analytics
    <script>
      var analyticsConfig = { enabled: false };
      firebase.analytics(analyticsConfig);
    </script>
    
  • 第一页上的某处:

    接受统计信息Cookie吗? [是] [否]

    以及相应的飞镖代码

    // Enable / disable Google Analytics
    FirebaseAnalytics analytics = getAnalytics();
    analytics.setAnalyticsCollectionEnabled(usersAnswer);
    

在理想情况下,仅当用户提供肯定答案时才加载分析代码。如果用户选择的是 [否] ,则代码库中的分析代码将无济于事。

如何实现类似的功能

感谢Dietrich

解决方法

我找到了可行的解决方案:

firebase.analytics()中调用index.html之前,变量ga-disable-G-FOO0490BAR必须设置为true-其中G-FOO0490BAR对应于Google Analytics(分析)测量ID或跟踪项目的ID。

<script>
  // Initialize Google Analytics
  var measurementID = "G-FOO0490BAR";
  window['ga-disable-' + measurementID] = true;
  firebase.analytics();
</script>

我在Google或Firebase Analytics控制台中都找不到该ID。但是,在安装并激活Google Analytics(分析)调试器插件后,发送Google Analytics(分析)事件时,Chrome浏览器控制台就会显示该插件。

例如:

Processing GTAG command: ["event","test_event",{string: "Hello,World!",send_to: "G-FOO0490BAR"}]

现在,我可以使用以下代码从Flutter启用/禁用Google分析:

// Enable / disable Google Analytics
FirebaseAnalytics analytics = getAnalytics();
analytics.setAnalyticsCollectionEnabled(usersAnswer);

禁用Google Analytics(分析)时未设置Cookie。

我在以下页面上找到了此解决方案:

要使用的ID的说明可在此处找到:

但是,与我的情况相反,在面板右上方没有显示测量ID。

干杯,迪特里希