HarmonyOS ArkWeb html怎么获取ua

怎么提前设置webview的ua,H5需要根据ua判断页面展示数据。

HarmonyOS
2024-09-04 11:59:09
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

H5获取UA可在页面初始化时写入sessionStorage或window对象,参考如下代码:

import webview from '@ohos.web.webview'; 
 
@Entry 
@Component 
struct test { 
  webController: webview.WebviewController = new webview.WebviewController(); 
  @State userAgent: string = ''; 
  aboutToAppear(): void { 
    webview.WebviewController.setWebDebuggingAccess(true) 
  } 
  build() { 
    Row() { 
      Column() { 
        Web({src:$rawfile('local.html'), controller:this.webController}) 
          .onControllerAttached(() => { 
            this.userAgent = this.webController.getUserAgent(); 
            console.log(this.userAgent) 
          }) 
          .domStorageAccess(true) 
          .javaScriptAccess(true) 
          .javaScriptOnDocumentStart([{ 
            script: `sessionStorage.setItem('userAgent', '${this.userAgent}')`, scriptRules: ["*"] 
          }]) 
      } 
      .width('100%') 
    } 
    .height('100%') 
  } 
}

HTML代码如下:

<!DOCTYPE html> 
  <html lang="en"> 
  <head> 
  <meta charset="UTF-8"> 
  <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
  <title>Session Storage Example</title> 
  </head> 
  <body> 
  <p id="id">Hello world</p> 
  <script> 
  // 获取sessionStorage中的userAgent值 
  var userAgent = sessionStorage.getItem('userAgent'); 
 
if (userAgent) { 
  document.getElementById('id').innerText = userAgent; 
} else { 
  alert('User Agent not found in sessionStorage.'); 
} 
</script> 
  </body> 
  </html>
分享
微博
QQ
微信
回复
2024-09-04 15:07:54
相关问题
求大佬告知webview如何设置UA
803浏览 • 1回复 待解决
Text怎么显示带html标签的文本
4276浏览 • 1回复 待解决
HarmonyOS ArkWeb组件是否支持深拷贝?
364浏览 • 2回复 待解决
HarmonyOS ArkWeb同层渲染嵌套能力
389浏览 • 1回复 待解决
HarmonyOS ArkWeb是否支持直接打开PDF?
129浏览 • 1回复 待解决
Text怎么解析展示带html标签的文本?
1989浏览 • 1回复 待解决
HarmonyOS ArkWeb是否支持自定义UserAgent
306浏览 • 1回复 待解决
HarmonyOS webview如何加载沙箱html
324浏览 • 1回复 待解决
HarmonyOS html富文本显示问题
754浏览 • 1回复 待解决
HarmonyOS 如何解析HTML文本
383浏览 • 1回复 待解决
HarmonyOS ArkWeb如何实现下拉刷新功能
368浏览 • 1回复 待解决
HarmonyOS webview加载本地html问题
232浏览 • 1回复 待解决
HarmonyOS 本地html传参问题
125浏览 • 1回复 待解决
HarmonyOS 屏幕宽度怎么获取
262浏览 • 1回复 待解决
ArkWeb组件是否支持深拷贝
427浏览 • 1回复 待解决
HarmonyOS webview组件如何加载html代码?
349浏览 • 1回复 待解决
HarmonyOS Web无法访问指定html
133浏览 • 1回复 待解决
HarmonyOS Web组件加载html文件异常
401浏览 • 1回复 待解决