今天学习了下WebView这个控件,但是在学习的过程踩坑不断,不过也多亏了踩坑无数,才大致了解到这个控件怎么用,废话少说直奔主题:
踩坑一:
出现下面的问题画面:

原因:从Android 9.0(API级别28)开始,默认情况下禁用明文支持。因此http的url均无法在webview中加载
解决方法:

在AndroidManifest文件中的application里面加入下面代码:
android:usesCleartextTraffic="true"
就可以啦!!!
踩坑二:

这个加载的意思是:找不到这个文件?
但是我的路径是一样而且文件明明就在??

这里就要注意了!!:只要把webView.loadUrl("file:///android_assets/index.html");里面的assets改为asset就可以了,这个解决有点奇怪??
踩坑三:
通过重写shouldOverrideUrlLoading方法,然后添加请求头信息,但是发现请求信息里面没有自己添加的请求头?
重新卸载应用,然后再次安装,就发现请求头出现了,蜜汁疑惑??
后面还有其他坑的话,欢迎大家一起探讨,毕竟三个臭皮匠顶一个诸葛亮,多探讨多学习!!
网友评论