Chrome Extension的background.html中的Google Analytics跟踪

时间:2012-10-20 05:57:51

标签: google-chrome-extension google-analytics

当我意识到我无法直接在内容脚本中跟踪时。我开始使用后台HTML跟踪我的数据。通过Content Script tracking with Google Analytics

当我设置后台脚本时,我发现它不支持内联脚本。所以我把代码放在一个js文件中并使用" src = filename.js"包括那个。通过chrome extension insert content script on browser action

但最后有一个麻烦:我根本无法加载ga.js,因为它仍然违反规则。这是我得到的:

  

拒绝加载脚本' https://ssl.google-analytics.com/ga.js'   因为它违反了以下内容安全策略指令:   " script-src' self'铬扩展资源:"

我的扩展结构:

  1. background.html
  2. 的script.js
  3. tracker.js

  4. 有关此问题的详细信息:

    background.html:

    <html>
    <script src="tracker.js"></script>
    <body></body>
    </html>
    

    tracker.js: (我隐藏了我的ID)

    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', _gaID]);
    _gaq.push(['_trackPageview']);
    
    (function() {
      var ga = document.createElement('script');
      ga.type = 'text/javascript';
      ga.async = true;
      ga.src = 'https://ssl.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0];
      s.parentNode.insertBefore(ga, s);
    })();
    

    感谢您提供任何帮助!

1 个答案:

答案 0 :(得分:13)

看起来不错。你走在正确的轨道上。您只需更新manifest.json文件即可从google域下载脚本。

假设您使用带有manifest_version:2的manifest.json文件。您应该将此行添加到清单

"content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'",

更多信息:

http://developer.chrome.com/extensions/tut_analytics.html