一、问题
使用DSBridge的DWebView 在Android 6 及 以下的Android 版本网页白屏
二、解决思路
1.发现问题:DSBridge 中的DWebView 是继承原生的WebView 写的,而原生的WebView 在Android 6 及 以下的Android 版本就是会出现网页白屏问题,以下展示的是继承原生WebView的DWebView 依赖
这个是继承X5WebView 的DWebView 依赖,不过有问题,我拉下来DSBridge工程的源码,发现依赖的X5 版本比较低,以至于还是白屏,所以我就拉下源码,改了X5 版本
3.我使用了X5 的DWebView 以后,发现有时候还是白屏,排查了很久时间,最后在打印X5 初始化的日志中发现,白屏原因是X5 初始化失败。
X5 初始化失败常见的原因:
而我的原因就是第3种,所以我在进入网页前需要判断X5 是否初始化成功才进入
4.接着我又遇到了新的问题,X5 一直初始化失败,显示110,目前还没有找到解决办法。
5.最后,我就两种DWebView 都用上,一个是依赖继承原生的DWebView ,另一个是将X5 版本的DWebView 源码集成到自己项目中。
当初始化失败,我就使用继承原生WebView的DWebView,
而Android 6 及以下的Android 版本手机,只能初始化成功才可以进入网页。
三、总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。