报错信息:
java.net.UnknownServiceException: CLEARTEXT communication to ip地址 not permitted by network security policy
原因:
为保证用户数据和设备的安全,Google针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着
Android P 将禁止 App 使用所有未加密的连接,因此运行 Android P
系统的安卓设备无论是接收或者发送流量,未来都不能明码传输。
即:出现错误正是因为在Android P的手机上 AndroidTargetSdkVersion 设置为28或以上并且使用了HTTP 请求。
解决方法:
1. TargetSDKVersion 降级到28以下;
2. 使用HTTPS 加密网络请求;
3. 更改网络安全配置
方法3步骤:
①在module的res目录文件下新建一个名为xml的文件夹,文件夹里再建一个名为network-security-config.xml的文件,文件内容如下
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config>
②在AndroidManifest文件中配置此xml
<application ...................... android:networkSecurityConfig="@xml/network_security_config" ......................>
完毕。
原文地址:https://www.cnblogs.com/hi-yxiao/p/11633424.html
时间: 2024-10-20 03:53:06