问题描述

今天在app用webView加载网页。突然出现了加载不出来的情况。​​webView.getUrl()​​都能得到我要加载的Url。但是就是不显示我要加载的网页。在浏览器上是可以显示的

解决思路

1.因为之前遇到过类似的问题,是证书问题,所以我就看上次的解决方案能否解决。

如图

记录webView显示空白的又一坑_android


证书有问题,选择继续加载。

但是,还是没解决

2.各种百度,尝试各种方案

比如

mWebSettings.setDomStorageEnabled(true);//开启本地DOM存储

我以为是html网页太大了,所以我就开启本地DOM存储试试。但是还不行
于是我就想看看缓存行不行

mWebSettings.setAppCacheEnabled(true);//是否使用缓存

事实证明也不行

3.再次冷静,分析问题。

我的webView第一次是可以打开的,但是打开了另外一个页面(也是webView)之后(另外一个页面也是可以打开的),再打开第一次的webView,就加载不出来了。我灵机一动,想会不会是打开另外一个页面的时候,webView没有销毁?

因为公司里的webView用的是自己封装的工具类,可能有的步骤漏掉了。

我去找源代码,果然!

于是我就加了两行。如图

记录webView显示空白的又一坑_java_02


在用户点击返回的时候,手动销毁了webView,同时在返回事件中,也做了销毁,如图

记录webView显示空白的又一坑_加载_03


然后再按之前的步骤。

先打开另外一个页面,再打开我最初要打开的页面,发现可以打开了。问题解决!