前几天,我的Firefox附件由于“远程代码执行”而被删除。我使用的是https://www.google-analytics.com/analytics.js中的代码,效果很好,除了Firefox出于某种原因显然不信任Google的官方分析代码。
在我从Firefox收到的电子邮件中,我链接到一个“ approved”方法,但是该方法具有一些我在互联网上看到的最糟糕的文档,一旦我最终运行它,与我以前使用的Google代码相比,它受到了 EXTREMELY 的限制。
我想继续使用Google代码,但是我无法在另一台服务器上引用JS,因此我怀疑只下载Google的分析代码并将其与扩展程序打包在一起是可以接受的,那么我有什么选择? ?
我在
之前使用下面的代码(link to source)// Analytics Magic Voodoo
(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-XXXXXXXXX-1', 'auto');
// Modifications:
ga('set', 'checkProtocolTask', null); // Disables file protocol checking.
ga('send', 'pageview', '/popup'); // Set page, avoiding rejection due to chrome-extension protocol
并且Firefox建议使用这段代码作为一种可接受的替代方法
let request = new XMLHttpRequest();
let message =
"v=1&tid=" + GA_TRACKING_ID + "&cid=" + GA_CLIENT_ID + "&aip=1" +
"&ds=add-on&t=event&ec=AAA&ea=" + aType;
request.open("POST", "https://www.google-analytics.com/collect", true);
request.send(message);
我希望我的扩展程序仍能快速运行,并报告准确的位置和页面使用情况数据。
按现状,Firefox“解决方案”实际上并不显示我所在的城镇,而是最近的城市,而Google解决方案显示的是我所在的确切城镇,即使它是该较大城市的郊区。
Firefox解决方案还跳过报告打开了哪个页面的操作,因此在我的分析仪表板中显示当前有1个用户,但没有说明该用户在何处。
我也希望它可以在Google Chrome和Firefox上使用。因为这只是我的一个热情项目,所以我真的不想支持两个单独的版本。
谢谢。