Javascript 在ionic/cordova web app上从GA迁移到GTAG的问题 描述
由于旧的GA SDK已经过时,我们正在迁移到GTAG。 迁移时,我发现这行代码:Javascript 在ionic/cordova web app上从GA迁移到GTAG的问题 描述,javascript,ionic-framework,google-analytics,google-tag-manager,Javascript,Ionic Framework,Google Analytics,Google Tag Manager,由于旧的GA SDK已经过时,我们正在迁移到GTAG。 迁移时,我发现这行代码: ga('set', 'checkProtocolTask', null); 这将禁用协议检查,以便GA脚本在网络视图中工作(cordova使用文件://协议) 我试过的 我浏览了互联网(大约2-3页“相似但不完全相同”的问题) 我找到的唯一解决方案是: TLDR:在Google Tag Manager中添加一个脚本,该脚本将禁用Google analytics中所有跟踪器的协议检查,并在Google analyt
ga('set', 'checkProtocolTask', null);
这将禁用协议检查,以便GA脚本在网络视图中工作(cordova使用文件://
协议)
我试过的
我浏览了互联网(大约2-3页“相似但不完全相同”的问题)
我找到的唯一解决方案是:
TLDR:在Google Tag Manager中添加一个脚本,该脚本将禁用Google analytics中所有跟踪器的协议检查,并在Google analytics设置中使用该脚本
但是:
*我们现在还没有使用谷歌标签管理器,所以我们必须为此设置。
*对我来说,这似乎是一个肮脏的黑客。。。但我想这并不比旧版本好。。。
*我认为,当其他一切都在GIT repo中时,在Tag Manager中使用这段代码并不好。
*这意味着我们正在禁用协议检查,无论它在哪里被调用。而“黑客”只是在构建移动应用程序时禁用了协议检查(桌面web在没有这条线的情况下工作)
没有其他解决办法吗?我错了吗?所以。。。我刚刚意识到,使用全球站点标签只是像我们过去一样使用ga。 因此,我实际上使用了我发现的页面中的解决方案: 只有我在页面中使用了该代码段,而不是在GTM变量中使用。 因此,每当我加载页面时,我都会这样做
ga(函数(){
var trackers=$window.ga.getAll();
跟踪器.forEach(功能(跟踪器){
set('checkProtocolTask',null);
});
});
我将代码段包装在一个函数(){…}
中,这样它显然是在ga初始化后运行的