如何检查我的 google 分析是否在 chrome 扩展上工作?

How to check if my google analytics is working on a chrome extension?

我正在尝试在 Google Analytics 上跟踪 chrome 扩展程序。

看起来配置正确,但我在仪表板上看不到数据。不确定是否是延迟,是否因为我是 运行 开发模式的扩展而被忽略,或者我是否需要配置其他东西。

我正在使用以下代码:

const gaScript = document.createElement('script');
    gaScript.type = 'text/javascript';
    gaScript.async = true;
    gaScript.src = 'https://ssl.google-analytics.com/analytics.js';
    gaScript.onload = function() {
      ga.l = +new Date;
      ga('create', 'MY_CODE', 'auto');
      ga('set', 'checkProtocolTask', null); // Disables file protocol checking.
      ga('send', 'pageview');
    }
    const s = document.getElementsByTagName('script')[0];
    s.parentNode?.insertBefore(gaScript, s);

当我检查后台控制台时,在“网络”选项卡上我可以看到:

但我仍然无法在分析仪表板上看到任何记录的数据。知道为什么会这样吗?

更新:

多亏了 Michele,我才能够理解这个问题。 Google 创建了一种新的跟踪形式:Global Analytics 并且代码不同于标准的 Universal Analytics。

今天创建分析项目的人将默认获得全局分析。我研究了它,我认为该标准目前更适合扩展。我会等待 Google 更新他们的文档以包含此案例以开始使用它

将 'MY_CODE' 替换为您的跟踪 ID 的实际值。应该类似于 'UA-1233445-2'。 在 Google Analytics 中,转到管理 > 属性 设置以查找您的跟踪 ID

为什么不使用显式代码:

// Standard Google Universal Analytics code
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXX-1', 'auto');
ga('set', 'checkProtocolTask', function(){});
ga('send', 'pageview', '/chrome-extension/popup.html');

我已经在我的扩展中试过了,效果很好。

这是我完整的工作示例代码: https://www.michelepisani.it/articoli/creare-un-estensione-di-chrome-e-tracciarla-con-google-analytics/

analytics.js替换为analytics_debug.js,并检查控制台中的日志。 Docs