关于webview加载不出html,反而百度等一些html能加载出来。应该是证书问题。
1,第一步:
android:usesCleartextTraffic="true" 加上这行
第二步:
android:networkSecurityConfig="@xml/network_security_config"
加上这行
第三步:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<!-- 信任系统预装 CA 证书 -->
<certificates src="system" />
<!-- 信任用户添加的 CA 证书,Charles 和 Fiddler 抓包工具安装的证书属于此类 -->
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>
加上这个文件,内容如上,可以只写一个system,不用那个user。
2,对于一些https请求还要有请求头。用
WidgetsBinding.instance.addPostFrameCallback((_) {
Map<String, String> headers = {};
headers.addAll({"sessionToken": "Android"});
_controller?.loadUrl(widget.initialUrl, headers: headers);
});
再配置一下UserAgent就行了。