google-analytics - 如何设置 Google Analytics 可以读取的自定义用户代理

标签 google-analytics user-agent

我想为嵌入我的网站的 webview 应用程序设置自定义用户代理。我可以设置这样的自定义代理(“我的应用程序 Android”)。
问题是 Google Analytics 将此代理的流量读取为桌面,而不是像常规 webview 那样移动。
设置自定义用户代理的最佳方法是什么,同时仍保留移动设备和设备操作系统等数据,以便 Google Analytics 等工具仍然可以读取它。

最佳答案

正如 MAX 的回答一样,在保持所有属性(如操作系统和渲染引擎等)的同时操纵用户代理非常困难......

同时,我仍然希望使用自定义用户代理来定位我的应用用户,并能够从这个 webview 应用中分离流量。

我所做的是这样的:

1- 设置自定义用户代理

我没有将整个用户代理替换为自定义用户代理,而是将其附加到用户代理 [应用ID/应用版本] ,从这个博客中找到了很好的信息:Webviews and User-Agent strings .

现在用户代理看起来像这样:

Mozilla/5.0 (Linux; Android 9; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/68.0.3440.91 Mobile Safari/537.36 [Custom App/1.0.1]



查询:Correct way to format user-agent string in an Android WebView App?

2- 在 Google Analytics 中设置自定义维度

由于 Google Analytics 会将来自该代理的所有浏览器值访问标记为 Android Webview,因此我分配了一个自定义维度以便能够识别 自定义用户代理 session 并创建 单独查看 为了它。

在使用 PHP 的后端,我根据用户代理设置维度的值。
<script>
<?php
  if(strpos($_SERVER['HTTP_USER_AGENT'], 'Custom user agent here')!==false)
  {
     $customAgent_value = 'your agent';
  }
?>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-', {
  'custom_map': {'dimension1': 'custom_agent'}
  });
gtag('event', 'custom_agent_event', {'custom_agent': '<?= $customAgent_value;?>'}); 
</script>   

这对我来说现在很好。我可以从特定的 webview 应用程序中定位用户,同时能够将流量从 Analytics 中的不同 webview 中分离出来。

关于google-analytics - 如何设置 Google Analytics 可以读取的自定义用户代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52322038/

相关文章:

google-analytics - 分析实验动态 URL

google-chrome - 可以过滤 chrome devtools 网络选项卡中记录的请求吗?

r - 无法通过 httr::user_agent 设置用户代理

javascript - 打开另一个页面时,jQuery 脚本无法按预期工作

google-analytics - 如何向Google Analytics(分析)添加带有特殊字符é(barlé.com)的网址?

javascript - 如何从其他子域发送一个子域的综合浏览量

javascript - 如何仅在 Firefox 的一个选项卡中更改用户代理?

从用户代理检测设备(移动)是什么的 php 脚本?

html - 哪些用户代理支持 HTML5 <video> 标签中的 mp4/H.264 视频?

ios - iOS/MacOS iMessage 的用户代理字符串是什么?