Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google analytics 使用文件的网站上的谷歌分析://_Google Analytics_Google Tag Manager_Offline Mode - Fatal编程技术网

Google analytics 使用文件的网站上的谷歌分析://

Google analytics 使用文件的网站上的谷歌分析://,google-analytics,google-tag-manager,offline-mode,Google Analytics,Google Tag Manager,Offline Mode,我试图在一种桌面应用程序中引入Google Analytics,所有加载文件都是通过file://而不是http或localhost完成的,因为它大部分时间是离线工作的。任何使用谷歌分析或谷歌标签管理器跟踪应用程序使用情况的尝试都是无效的 例如,我使用了: ga('create', 'UA-XXXXX-Y', 'auto'); ga('set', 'checkProtocolTask', null); ga('set', 'checkStorageTask', null); ga('send',

我试图在一种桌面应用程序中引入Google Analytics,所有加载文件都是通过file://而不是http或localhost完成的,因为它大部分时间是离线工作的。任何使用谷歌分析或谷歌标签管理器跟踪应用程序使用情况的尝试都是无效的

例如,我使用了:

ga('create', 'UA-XXXXX-Y', 'auto');
ga('set', 'checkProtocolTask', null);
ga('set', 'checkStorageTask', null);
ga('send', 'pageview');
如前所述,添加ga'set',checkStorageTask',null; 没有结果

有人处理过这种情况吗?

我做了一个非常快速的测试。ga'set','checkStorageTask',null;没有为我做任何事情,相反,我发现有必要在创建跟踪器时将存储设置为“无”,这是有意义的,因为您无法使用文件协议设置cookie。这也意味着您可能不会进行会话跟踪,因为每次点击都会生成一个新ID

ga'set','checkProtocolTask',null似乎是必需的-否则调试器自然会抱怨文件不是有效的协议

之后,数据成功发送,但未显示在实时视图中。我怀疑报告引擎可能不喜欢文件协议,并使用正确的协议设置位置字段。因此,我最终得出以下结论:

  ga('create', 'UA-XXXXXX-5' , {'storage':'none'});
  ga('set', 'checkProtocolTask', null);

   ga('send', 'pageview' , {'location' : document.location.href.replace('file','http') });
并显示在实时报告中。这是一个真正快速的测试,所以您需要独立地验证这一点。请注意,在代码示例中,您不需要将cookie域设置为auto参数,因为在任何情况下都无法设置cookie,因为没有可将cookie设置为的域

另外,如果你大部分时间离线工作,GA将无法工作,你需要加载analytics.js文件,并需要向跟踪服务器发送调用,但你可能已经意识到了这一点。

我运行了一个非常快速的测试。ga'set','checkStorageTask',null;没有为我做任何事情,相反,我发现有必要在创建跟踪器时将存储设置为“无”,这是有意义的,因为您无法使用文件协议设置cookie。这也意味着您可能不会进行会话跟踪,因为每次点击都会生成一个新ID

ga'set','checkProtocolTask',null似乎是必需的-否则调试器自然会抱怨文件不是有效的协议

之后,数据成功发送,但未显示在实时视图中。我怀疑报告引擎可能不喜欢文件协议,并使用正确的协议设置位置字段。因此,我最终得出以下结论:

  ga('create', 'UA-XXXXXX-5' , {'storage':'none'});
  ga('set', 'checkProtocolTask', null);

   ga('send', 'pageview' , {'location' : document.location.href.replace('file','http') });
并显示在实时报告中。这是一个真正快速的测试,所以您需要独立地验证这一点。请注意,在代码示例中,您不需要将cookie域设置为auto参数,因为在任何情况下都无法设置cookie,因为没有可将cookie设置为的域


此外,如果您大部分时间都在脱机工作,GA将无法工作,则需要加载analytics.js文件,并且需要向跟踪服务器发送调用,但您可能已经意识到了这一点。

您还需要设置一个显式页面,并且可能需要使用localStorage进行用户身份跟踪。我试图在回答一个不同的问题时详细说明所有方面:您还需要设置一个显式页面,并且可能希望使用localStorage进行用户身份跟踪。我试图在回答一个不同的问题时详细说明所有方面:因为不能用文件协议设置cookie,所以不必是真的,例如,在android webview中,由于CookieManager.setAcceptFileSchemeCookiestrue,可以将cookie存储在file://协议上,因此每个应用程序都可以存储cookie,因为每个应用程序都有自己的file://协议cookie存储。另一个有趣的信息是,对于新的GA4属性G-XXXXXXXX,ga'set'、'checkProtocolTask'没有替代项,因此对于GA4,目前无法跟踪file://protocol?。GA4是新的,缺少了GA3 Universal Analytics的许多功能。您不能使用文件协议设置cookies。它不一定是真的,例如,在android webview中,由于CookieManager.setAcceptFileSchemeCookiestrue,可以将cookie存储在file://协议上,因此每个应用程序都可以存储cookie,因为每个应用程序都有自己的file://协议cookie存储。另一个有趣的信息是,对于新的GA4属性G-XXXXXXXX,ga'set'、'checkProtocolTask'没有替代项,因此对于GA4,目前无法跟踪file://protocol?。GA4是新的,缺少了GA3 Universal Analytics的许多功能