如何定位华为特定用户代理

Kol*_*eev 4 javascript mobile user-agent huawei-mobile-services huawei-browser

我一直在尝试找到一种针对华为移动设备的方法,以便将它们重定向到华为应用商店,但似乎找不到解决方案。到目前为止我想到的是编写一个正则表达式来检查HUAWEI | 华为| 从 navigator.userAgent 对象返回的字符串中包含 huawei ..但我不确定它是否适用于所有此类设备,尽管这就是我在查看这些示例 userAgents时的想法

是否有模拟器或类似 browserstack 的东西可以尝试一下?

zha*_*hen 8

您可以通过查询useragent来判断当前设备是否是华为手机。

\n

目前华为浏览器根据HMS或GMS设备类型提供UA。\n示例如下(浏览器版本号、HMS版本号、GMS版本号、设备信息会相应变化):

\n
    \n
  1. HMS和GMS均已安装。下面是一个例子:
  2. \n
\n

Mozilla/5.0 (Linux; Android 6.0.1; LYA-AL00\xef\xbc\x9bHMSCore/4.0.0 GMS/10.4 ) AppleWebKit/537.36 (KHTML,如 Gecko) Chrome/70.0.3538.64 HuaweiBrowser/10.0.3.102 Mobile Safari/ 537.36

\n
    \n
  1. 如果只安装HMS,示例如下:
  2. \n
\n

Mozilla/5.0 (Linux; Android 6.0.1; LYA-AL00\xef\xbc\x9bHMSCore/4.0.0 ) AppleWebKit/537.36 (KHTML,如 Gecko) Chrome/70.0.3538.64 HuaweiBrowser/10.0.3.102 Mobile Safari/537.36

\n
    \n
  1. 仅安装 GMS。下面是一个例子:
  2. \n
\n

Mozilla/5.0 (Linux; Android 6.0.1; LYA-AL00\xef\xbc\x9bGMS/10.4 ) AppleWebKit/537.36 (KHTML,如 Gecko) Chrome/70.0.3538.64 HuaweiBrowser/10.0.3.102 Mobile Safari/537.36

\n
    \n
  1. 没有 HMS 或 GMS。下面是一个例子:
  2. \n
\n

Mozilla/5.0(Linux;Android 6.0.1;LYA-AL00)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/70.0.3538.64 HuaweiBrowser/10.0.3.102 Mobile Safari/537.36

\n

  • @Кольо Пеев,如果是关于检查应用程序商店兼容性,这是一个非常好的答案,如果您可以确保手机具有 HMSCore 而不是 GMS,那么您应该重定向到 App Gallery 而不是 Google Play (2认同)