一、错误记录
报错信息 :
网页无法打开 位于 http://… 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED ;
二、解决方案
在 Android 9.0 及以上的系统版本中,系统默认情况下禁止应用程序使用不安全的明文流量进行网络连接,以提高用户的安全性。
这意味着,如果应用程序尝试连接到一个不安全的 HTTP 网站,将收到 net::ERR_CLEARTEXT_NOT_PERMITTED 错误 ; 也就是说应用中的 WebView 尝试显示 HTTP 站点时就会报 net::ERR_CLEARTEXT_NOT_PERMITTED 错误 ;
解决方案一
在 AndroidManifest.xml 清单文件中的 application 节点配置 android:usesCleartextTraffic="true"
属性 , 允许应用程序使用明文流量进行网络连接,该操作会降低应用程序的安全性 ;
<application
android:usesCleartextTraffic="true" >
</application>
解决方案二
使用 HTTPS 协议加密 HTTP 网站 , 提供更高的安全性保护 ;
如果该网站是自己开发的 , 在自己的 Web 服务器上部署 ,则可以 使用免费的 SSL/TLS 证书来启用 HTTPS ;
如果使用的是第三方 Web 服务,则应该 联系服务提供商启用 SSL/TLS 证书 , 进而启用 HTTPS 协议 ;