如何解决webview离线加载白屏问题
web容器加载html调用全屏接口,在跳转5次后,第六次跳转会出现web白屏。使用最新特性离线组件,离线组件中的Text标签正常展示,但是web容器中的html展示异常,而且确定组件树上有web节点。如果不调全屏接口,跳转页面正常,跳转多次也不会白屏。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
如何解决webview loaddata白屏问题
378浏览 • 1回复 待解决
Web组件加载某个页面,出现白屏、页面显示不出来,如何解决和定位
711浏览 • 1回复 待解决
this传递问题,该如何解决?
729浏览 • 1回复 待解决
HarmonyOS如何解决数据存储问题?
7618浏览 • 3回复 已解决
如何解决预览流黑屏的问题
356浏览 • 1回复 待解决
如何解决文件的中文乱码问题
949浏览 • 1回复 待解决
如何解决module相互依赖问题
470浏览 • 1回复 待解决
如何解决底层库无法调试的问题?
405浏览 • 1回复 待解决
loadData加载h5字符串,如何解决onUrlLoadIntercept不触发问题?
420浏览 • 1回复 待解决
如何解决webview调试用每次都需要寻找进程号
445浏览 • 1回复 待解决
如何解决报错code:9568329和code:9568320问题
223浏览 • 1回复 待解决
如何解决hdc无法连接真机的问题
453浏览 • 1回复 待解决
离线webview组件有没有相关使用文档
497浏览 • 1回复 待解决
在离线场景NodeController中创建webview组件
530浏览 • 1回复 待解决
如何解决MD5加密中遇到的问题
142浏览 • 1回复 待解决
如何解决Web组件加载的HTML页面内检测网络状态失败
856浏览 • 1回复 待解决
ListContainer加载大量数据白屏并且卡UI
3832浏览 • 1回复 待解决
如何解决不同模块之间相互依赖的问题
608浏览 • 1回复 待解决
如何解决Hi3861烧录问题 Failed to load or write images to flash
10117浏览 • 2回复 待解决
如何解决Hi3516烧录问题 Failed to load or write images to flash
11399浏览 • 3回复 待解决
Web组件使用rawFile加载离线html时,如何在url后拼接参数
426浏览 • 1回复 待解决
获取UIContext报错1300002如何解决
581浏览 • 1回复 待解决
http请求报错2300006如何解决
759浏览 • 1回复 待解决
Image组件用PNG格式会出现锯齿问题,该如何解决
751浏览 • 1回复 待解决
鸿蒙应用向安卓应用传递文件时如何解决权限问题 ?
1738浏览 • 1回复 待解决
当前web使用BuilderNode通过无状态的UI方法@Builder生成离线web组件。此时创建的web组件是无状态的。
来回切换多次,会创建多个离线web组件,当web创建超过5个时,会触发tabdiscarding机制,冻结部分web实例,使其无法渲染(后台释放资源节省内存),调用全屏接口后,当前调用的web实例被一致被判断为前台,所以一致处于 active状态。后面再次创建的无状态web则被定义为inactive状态。
更详细来讲其实就是一个Frame Eviction Manager机制,是负责管理web中的帧缓存,根据一定的策略将一些不常用或者不重要的帧从内存中移除,以释放内存空间,节省内存提高稳定性。对应的是web源码中的max_number_of_saved_frames_字段,其设置的最大值为5。
参考代码:
在每次创建好web实例,调用loadurl时,设置WebController的onActive方法主动激活状态即可解决此问题。需要应用调用相关接口。离线web释放需要先对使用的framenode进行释放,才可析构离线web组件。