HarmonyOS 鸿蒙Next如何通过userAgent区分手机端和pc端

发布于 1周前 作者 nodeper 来自 鸿蒙OS

HarmonyOS 鸿蒙Next如何通过userAgent区分手机端和pc端 鸿蒙 NEXT如何通过userAgent区分手机端和pc端

2 回复

考UserAgent定义:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-default-useragent-V5# 默认useragent定义

例如:

import web_webview from ‘@ohos.web.webview’;

controller: web_webview.WebviewController = new web_webview.WebviewController();

const ua = this.controller.getUserAgent()

基于ArkWeb的原生浏览器访问网络的User-Agent(UA)格式为:

Mozilla/5.0 (Phone; HarmonyOS 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 ArkWeb/xx.xx.xx Mobile HuaweiBrowser/xx.xx.xx

Mozilla/5.0 (PC; HarmonyOS 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 ArkWeb/xx.xx.xx HuaweiBrowser/xx.xx.xx

Mozilla/5.0 (Tablet; HarmonyOS 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 ArkWeb/xx.xx.xx HuaweiBrowser/xx.xx.xx

分别代表运行HarmonyOS NEXT版本的手机、PC、平板设备

更多关于HarmonyOS 鸿蒙Next如何通过userAgent区分手机端和pc端的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中,要通过userAgent区分手机端和PC端,关键在于解析userAgent字符串中的特征信息。userAgent字符串包含了设备类型、操作系统、浏览器等详细信息,通过识别这些信息可以区分不同的设备类型。

对于手机端,userAgent通常会包含如“Mobile”、“Android”等标识手机设备的关键词,以及鸿蒙特有的标识(例如“HarmonyOS”)。而在PC端,userAgent则可能包含“Windows NT”、“Macintosh”等标识桌面操作系统的关键词。

在鸿蒙系统中,尽管具体的userAgent格式可能因设备、浏览器或应用而异,但基本逻辑是相似的。你可以通过编写正则表达式或逻辑判断来解析userAgent字符串,根据其中的关键词来区分手机端和PC端。

例如,你可以检查userAgent是否包含“Mobile”或“HarmonyOS”(同时排除可能的模拟情况),如果包含,则认为是手机端;如果不包含这些关键词,而是包含“Windows NT”或“Macintosh”等,则认为是PC端。

请注意,这种方法并非绝对可靠,因为userAgent字符串可以被修改或伪造。但在大多数情况下,这种方法是有效的。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部