webview 中文文档 下载 App

华为 HarmonyOS NEXT 的 ArkWeb:不基于 Chromium 的自研内核

基本事实

ArkWeb 的现状(2026)

截至 HarmonyOS NEXT 3.x 版本,ArkWeb 的 Chromium 兼容性仍在追赶中:

特性Chromium WebViewArkWeb状态
:has() 伪类✅ 完整支持⚠️ 部分支持ArkWeb 可能只支持简单选择器
CSS nesting✅❌ArkWeb 还没实现
Popover API✅❌暂不支持
WebGPU✅ (Chromium 113+)❌鸿蒙暂不开放
blob: 协议下载✅⚠️ 安全限制鸿蒙默认拦截非 HTTPS 下载
Geolocation API✅⚠️ 需要系统权限鸿蒙权限体系不同
WebCrypto API✅✅ 基本可用OK

开发者怎么应对

检测 ArkWeb

// JS 里检测
const isHarmonyOS = navigator.userAgent.includes('HarmonyOS');
const isArkWeb = navigator.userAgent.includes('ArkWeb');

降级策略

if (CSS.supports(':has(div)')) {
    // Chromium 新版路径
    document.querySelector('.parent:has(.child)').click();
} else {
    // ArkWeb 兼容路径
    document.querySelector('.parent .child').parentElement.click();
}

后端标记

如果你的 Web 服务端要识别 HarmonyOS 设备,注意 UA 字符串包含 HarmonyOS 和 ArkWeb:

Mozilla/5.0 (Linux; Android 13; HarmonyOS NEXT) AppleWebKit/537.36 ... Version/5.0 ArkWeb/500 ...

EMUI / HarmonyOS 4 及更早

这些设备仍基于 Android AOSP,WebView 策略和其他国产 Android 类似:

→ 下一页:OPPO / vivo / Samsung:几乎没差别的 Chromium 实现