android P .UnknownServiceException: CLEARTEXT communication to **** not permitted by network

 

之前 写过:Android 高仿 扇贝 Splash 启动页 UI 篇 ,Android 高仿 扇贝 Splash 启动页 数据篇

自己的手机升级到9.0 的时候,怎么都不显示启动页图片了,查看了 SD 目录,图片没有下载,数据库也是空的,看了下日志:

 

java.net.UnknownServiceException: CLEARTEXT communication to s.cn.bing.net not permitted by network 

 网络被禁止访问了,这。。。。

 在Android 9.0 系统的设备上,如果应用使用的是非加密的明文流量的http网络请求,则会导致该应用无法进行网络请求,https则不会受影响,同样地,如果应用嵌套了webview,webview也只能使用https请求。

这个启动页图片是从必应拉取的,总不能让他改成https 吧。。

方案一:

所以把

 targetSdkVersion 28----->targetSdkVersion 27

这样就可以了,这是一个方案。

 

方案二:

 在manifest 下添加:

 android:usesCleartextTraffic="true"
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>

这个方式比较推荐。

方案三:

res 目录下 创建 xml ,xml 里创建:

network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>

添加到manifest 文件里去。

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:networkSecurityConfig="@xml/network_security_config"
        ...>
        ...
    </application>
</manifest>

参考:

Android9.0 支持网络Http明文请求(可适配7.0抓包问题)

AndroidP 高版本联网失败报错解决java.net.UnknownServiceException: CLEARTEXT communication ** not permitted by

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值