使用 file:// 的网站上的谷歌分析



我正在尝试在一种桌面应用程序中引入Google Analytics,所有加载文件都是通过 file://而不是http或localhost完成的(因为大多数时候它都可以离线工作)。任何使用Google Analytics或Google Tag Manager跟踪应用程序使用情况的尝试都不起作用。

例如,我使用过:

ga('create', 'UA-XXXXX-Y', 'auto');
ga('set', 'checkProtocolTask', null);
ga('set', 'checkStorageTask', null);
ga('send', 'pageview');

正如这里所解释的(添加 ga('set', 'checkStorageTask', null);) 没有结果。

有人处理过这种情况吗?

我运行了一个非常快速的测试。 ga('set', 'checkStorageTask', null);没有为我做任何事情,相反,我发现有必要在创建跟踪器时将存储设置为无(这是有道理的,因为您无法使用文件协议设置 cookie)。这也意味着您可能不会进行会话跟踪,因为每次匹配都会生成一个新 ID。

ga('set', 'checkProtocolTask', null)似乎是必要的 - 否则调试器(自然地)抱怨该文件不是有效的协议。

之后,数据被成功发送,但没有显示在实时视图中。我怀疑报告引擎可能不喜欢文件协议,并使用正确的协议设置"位置"字段。所以我最终得到:

  ga('create', 'UA-XXXXXX-5' , {'storage':'none'});
  ga('set', 'checkProtocolTask', null);
   ga('send', 'pageview' , {'location' : document.location.href.replace('file','http') });

并显示在实时报告中。这是一个真正的快速测试,因此您需要独立验证这一点。请注意,您不需要设置 cookie 域(代码示例中的"auto"参数),因为在任何情况下都无法设置 cookie(没有要将 cookie 设置为的域)。

此外,如果您大部分时间离线工作,GA 将不起作用(您需要加载分析.js文件,并且需要向跟踪服务器发送调用),但您可能知道这一点。

相关内容

  • 没有找到相关文章

最新更新