HarmonyOS 鸿蒙Next WebView 加载网页白屏
HarmonyOS 鸿蒙Next WebView 加载白屏
WebView 加载白屏 部分链接加载正常,部分链接无法加载
查看文档链接 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/web-page-loading-with-web-components-0000001820999889 https://m.zcygov.cn/luban/privacy_policy?hideTitle=1 无法加载
2 回复
开发者您好,页面应该使用了数据存储相关功能,加上这些权限可以加载出来:
import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
import { url } from '@kit.ArkTS';
import { router } from '@kit.ArkUI';
@Entry
@Component
struct WebComponent {
@State userAgent:string = ""Mozilla/5.0 (Phone; OpenHarmony 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 ArkWeb/4.1.6.1 Mobile""
params = router.getParams() as URLStringRouteInfo
urlString?: string | null = 'http://'
webviewController: web_webview.WebviewController = new web_webview.WebviewController();
build() {
Column() {
Web({ src: ""https://m.zcygov.cn/luban/privacy_policy?hideTitle=1"", controller: this.webviewController}).onControllerAttached(()=>{
this.webviewController.setCustomUserAgent(this.userAgent)
})
//加上以下权限
.fileAccess(true)
.javaScriptAccess(true)
.domStorageAccess(true)
.onlineImageAccess(true)
}
}
}
class URLStringRouteInfo {
urlString?: string | null = 'http://'
}
针对HarmonyOS 鸿蒙Next WebView加载白屏的问题,可能的原因及解决方案如下:
- 网络问题:确保设备网络条件良好,并检查应用是否已添加网络权限ohos.permission.INTERNET。
- 系统兼容问题:检查WebView组件是否与当前HarmonyOS版本兼容,并尝试更新或替换组件版本。
- HTML/JavaScript语法问题:前端语法报错或框架兼容异常可能导致白屏,使用浏览器打开对应页面验证是否存在问题,或使用Devtools工具调试前端页面。
- 特定字符问题:若加载的网页内容含有字符“#”,可能导致白屏或内容无法显示。尝试对含有“#”的内容进行转义(如转换成%23)或进行base64编码。
此外,还需检查WebView的初始化和使用代码,确保没有逻辑错误。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。