Flutter web_view不能访问http的解决办法
最近在使用Flutter的插件web_view的时候,出现了打开http网页不能正常访问,但是可以访问https的网页,经过一阵搜索,找到了答案
原因
IOS和Android 9.0+对非HTTPS请求做了一些限制,不能直接访问Http请求,在Android中会出现net:ERR_CLEARTEXT_NOT_PERMITTED的错误
解决办法
在清单文件\android\app\src\main\AndroidManifest.xml的Application的标签里面设置networkSecurityConfig属性,代码如下:
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest ... > 3 <application android:networkSecurityConfig="@xml/network_security_config"> 4 <!-- ... --> 5 </application> 6 </manifest>
如下图所示:

在src/res/xml下面创建network_security_config.xml,配置如下所示:
1 <?xml version="1.0" encoding="utf-8"?> 2 <network-security-config> 3 <base-config cleartextTrafficPermitted="true"> 4 <trust-anchors> 5 <certificates src="system" /> 6 </trust-anchors> 7 </base-config> 8 </network-security-config>
如下图所示:


浙公网安备 33010602011771号