具体标识符(如
发布时间:2025-06-24 19:01:58 作者:北方职教升学中心 阅读量:099
WebView 中,鸿蒙可以提供 JS API 来判断。
推荐优先使用 。 具体标识符(如 。
如果网页在鸿蒙系统中运行,OpenHarmony。
if (window.isHarmonyOS) { console.log('目前的网页嵌入在鸿蒙应用程序中 WebView 中打开');} else { console.log('目前的网页不嵌入鸿蒙应用程序 WebView 中打开');}。
判断(首选)鸿蒙系统浏览器(如华为浏览器)会在 。 WebView 中打开');}。
精准判断。
仅适用于鸿蒙系统 WebView。
示例代码(原生 + JS)
注入环境变量的原始代码。
鸿蒙 JS API。
方法。
原注入变量。 有可能被篡改或伪造。
高度可控。
适用场景。
function isHarmonyOSBrowser() {// 检测鸿蒙浏览器是否有独特的行为constt isHarmonyOS = /HarmonyOS/i.test(navigator.userAgent);const isHuaweiBrowser = /HUAWEI/i.test(navigator.userAgent);return isHarmonyOS || isHuaweiBrowser;}if (isHarmonyOSBrowser()) {console.log('当前网页在鸿蒙系统浏览器中打开');} else {console.log('目前的网页不在鸿蒙系统浏览器中打开');}。
通用场景。
优点。
方法3:结合鸿蒙原生能力(适用于混合开发)
若为鸿蒙系统应用程序嵌入式 WebView,可通过原始代码注入环境变量或调用原始方法来判断。
// 将环境变量webview注入鸿蒙原生代码.getWebViewClient().setJavaScriptEnabled(true);webView.loadUrl("javascript:window.isHarmonyOS = true;");
JS 判断。可以通过 JavaScript 检测 。
独特的行为检测。 判断,如果需要嵌入鸿蒙应用程序 WebView 判断,环境变量可以结合原始代码注入。 User-Agent。
User-Agent。
依赖浏览器行为可能不准确。
示例代码。
判断
通过web端获取以下agent:
示例代码。
function isHarmonyOSBrowser() {const userAgent = navigator.userAgent;
return navigator.userAgent.indexOf("Harmony") > -1// 或者 判断是否包含 OpenHarmony或 HUAWEI 标识return/OpenHarmony|HUAWEI/i.test(userAgent);}if (isHarmonyOSBrowser()) {console.log('当前网页在鸿蒙系统浏览器中打开');} else {console.log('目前的网页不在鸿蒙系统浏览器中打开');}。
鸿蒙 WebView 场景。
通用场景。
方法二:通过鸿蒙 JS API 判断。
User-Agent。 总结。
简单易用。
关注我获得更多的知识或贡献。
User-Agent。
鸿蒙系统的浏览器可能有一些独特的行为或属性,这些行为可以通过检测来判断。
内嵌的鸿蒙应用 WebView。User-Agent。
在鸿蒙系统中,判断网页是否在鸿蒙手机浏览器中打开,1可以通过以下方法实现a;
方法1:通过 。
方法4:判断鸿蒙浏览器的独特行为。
缺点。
需要原始代码的配合。
function isHarmonyOSWebView() {// 判断鸿蒙是否有独特的鸿蒙 JS APIreturntypeofwindow.harmony !== 'undefined';}if (isHarmonyOSWebView()) {console.log('目前的网页在鸿蒙系统中 WebView 中打开');} else {console.log('目前的网页不在鸿蒙系统。
)。无需额外配置。
示例代码。