嗨,我一直在尝试将谷歌分析与我的混合移动应用程序集成,女巫是用 durandal 和 phonegap 开发的。这是我到目前为止所做的:
我已经复制了谷歌分析生成的一段代码,并将其添加到我的父 html 文件中。代码如下所示,我检查了源代码以确保它已加载:
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXX-1']);
_gaq.push(['_trackPageview']);
(function () {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
然后我像这样链接到 durandal 路线完成事件:
vm.router.on('router:navigation:complete').then(function (instance) {
window._gaq.push(['_trackPageview', location.pathname + location.search + location.hash]);
});
每次页面更改时都会执行这段代码。
然后我开始浏览应用程序,半小时后仍然没有数据显示在分析页面上。
我已经检查了 chrome 开发工具中的应用程序,看看是否有任何呼叫向谷歌发出,但没有显示。
有谁知道我做错了什么?
编辑
从文档中我意识到我必须将我的域设置为 none 才能调用谷歌分析:
_gaq.push(['_setDomainName', 'none']);
我假设这是正确的方法,因为这将是一个混合应用程序,可以在许多不同的平板电脑上运行。任何人都可以验证这个吗?