【android】webview中http请求访问不安全解决方法
当我们在Android8.0及以上系统访问http请求时,会提示以下错误:
Android WebView net::ERR_CLEARTEXT_NOT_PERMITTED
导致原因是:
从Android 9.0(API级别28)开始,默认情况下禁用明文支持。
因此http的url均无法在webview中加载,Android9.0对未加密的流量不再信任,添加了新的限制。
解决方式:1、首先创建文件 res/xml/network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">192.168.1.100</domain>
</domain-config>
</network-security-config>
其中将192.168.1.100替换为你自己的域名,根域名即可,includeSubdomains=“true” 就包含了二级域名。
2、修改 AndroidManifest.xml文件,在application节点加入
android:usesCleartextTraffic="true"
android:networkSecurityConfig="@xml/network_security_config"
3、检查网络访问权限,修改 AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />