原因:

Google表示,为保证用户数据和设备的安全,针对下一代 Android 系统(Android P(9.0)) 的应用程序,将要求默认使用加密连接,这意味着 Android P(9.0) 将禁止 App 使用所有未加密的连接,因此运行 Android P(9.0) 系统的安卓设备无论是接收或者发送流量,未来都不能明码传输,需要使用下一代(Transport Layer Security)传输层安全协议,而 Android Nougat 和 Oreo 则不受影响。

因此在Android P(9.0) 使用HttpUrlConnection进行http请求会出现以下异常:

W/System.err: java.io.IOException: Cleartext HTTP traffic to ** not permitted

使用OKHttp请求会出现:

java.net.UnknownServiceException: CLEARTEXT communication ** not permitted by network security policy

意思大概就是:安全策略不允许进行明文通讯

在Android P(9.0)系统的设备上,如果应用使用的是非加密的明文流量的http网络请求,则会导致该应用无法进行网络请求,https则不会受影响,如果应用嵌套了webview,webview也只能使用https请求。无法使用http请求,有人认为 Android P(9.0)上所有的 App 都需要使用 TLS 加密会降低上网体验,个人觉得上这是一种误解,对于一些老旧非要使用http协议的服务器我们可以采取配置APP的联网策略方式进行限制突破

解决方案如下:

一:

在Mainfiests,直接在application标签下配置如下代码

<uses-libraryandroid:name="org.apache.http.legacy"android:required="false" />

二:

targetSdkVersion 降到27以下

三:

在 res 下新建一个xml目录,然后创建一个名为:network_config.xml 文件(名字自定),内容如下

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

在Mainfiests  appliction标签下配置该属性

 android:networkSecurityConfig="@xml/network_config"

即可解决,9.0系统不允许Http协议访问网络的限制。

Android 9.0系统不允许Http协议访问网络突破相关推荐

  1. Android 6.0系统新特性及功能说明

    本文通过翻译官方文档和google开发者大会资料收集得出,转载请注明出处. Android 6.0系统新特性及功能说明... 1 1       优化用户体验:... 1 1.1        应用权 ...

  2. 《深入解析Android 5.0系统》——第1章,第1.2节安装开发包

    本节书摘来自异步社区<深入解析Android 5.0系统>一书中的第1章,第1.2节安装开发包,作者 刘超,更多章节内容可以访问云栖社区"异步社区"公众号查看 1.2 ...

  3. nokia android 8,疑似诺基亚8再曝光:预装Android 8.0系统

    [TechWeb报道]8月4日消息,之前诺基亚公布了诺基亚8手机,并且确认蔡司镜头认证.现在最新消息,来自GeekBench数据发现一款诺基亚机型,搭载骁龙835处理器,预装Android 8.0系统 ...

  4. android屏幕适配的五种方式_讲一讲Android 9.0系统的新特性,对刘海屏设备进行适配...

    黑客技术点击右侧关注,了解黑客的世界! Java开发进阶点击右侧关注,掌握进阶之路! Python开发点击右侧关注,探讨技术话题!作者丨郭霖来源丨郭霖(guolin_blog) 其实Android 9 ...

  5. android 系统源码调试 局部变量值_如何方便快速的整编Android 9.0系统源码?

    点击上方"刘望舒",选择"星标" 多点在看,就是真爱! 作者 :  刘望舒  |  来源 :刘望舒的博客地址:http://liuwangshu.cn/fram ...

  6. android 4.0系统,全新Android 4.0系统_手机Android频道-中关村在线

    与搭载Android 2.3系统的OPPO R807不同,OPPO R817搭载了Android 4.0系统.不过这款手机仍旧舍弃了Android系统的原生界面,因此两款手机在界面上的变化其实并不非常 ...

  7. android9谷歌推送,谷歌Android 9.0系统将统一推送以改善更新碎片化

    原标题:谷歌Android 9.0系统将统一推送以改善更新碎片化 玩懂手机网消息,Android和iOS一直是用户眼中两种不同的代名词,Android非常开放,是高度可定制的操作系统,设备制造商还是开 ...

  8. Android 8.0系统学习(19)--- SystemUI启动流程

    Android 8.0系统学习(19)--- SystemUI启动流程 systemui属于系统级应用,在开机过程中就会启动.具体来讲是在SystemServer进程中startOtherServic ...

  9. Android 8.0 学习(3)---Android 8.0系统的应用图标适配

    其实在去年Android 8.0系统刚推出的时候,我就仔细翻阅过Google官方的功能变更文档.变更项着实不少,但是真正需要我们去进行功能适配的地方却并不多.总结了一下,最主要需要进行适配的地方有两处 ...

最新文章

  1. linux里运行windows,在Linux上运行Windows应用程序
  2. 老程序员的经验和价值在哪里
  3. 使用GAN 进行异常检测——anoGAN,TODO,待用于安全分析实验
  4. jquery 查询元素技巧
  5. 昂贵的聘礼 poj 1062 dijsk
  6. 微博短视频千万级高可用、高并发架构如何设计?
  7. 精选| 2021年5月R新包推荐(第54期)
  8. java.net.SocketException: Software caused connection abort: socket write error
  9. paip.获取地理位置根据Ip
  10. 贝叶斯公式的图形记忆
  11. 火狐浏览器播放插件Linux,Firefox浏览器带flash播放器插件
  12. JAVA大型OA协同办公系统源码【源码免费分享】
  13. Java实现经纬度格式转化
  14. 计算平均指令时间_上海原油期货将推出TAS指令
  15. python条形图一直长_Python MatPlotlib条形图调整宽度
  16. 易语言之后,新式中文编程再现,风头更劲
  17. T1118,T1677,T1122
  18. 计算机网络之——非常恶心但友善ip地址、子网掩码、网络地址、构造超网、最小地址和最大地址(理解篇)
  19. 阿里云服务器+腾讯域名进行域名解析
  20. Linux开机出现读秒1min30s的问题

热门文章

  1. 新买的四件套不洗可以用吗
  2. 【ES】ElasticSearch搜索的底层原理?倒排索引和TF-IDF打分算法
  3. yandex浏览器_在浏览器中制作蛇游戏:Yandex的实践
  4. 升级iOS16后如何设置iCloud 共享照片库呢?
  5. iframe跨域通信
  6. 用ccache让Xcode运行、打包飞起来
  7. SecureCRT语言设置
  8. 轻薄本用服务器的性能,高性能轻薄本推荐-高性能轻薄本排行榜2020
  9. Unity官方教程Roll-a-ball (一)
  10. Java实现Snmp