Android9.0以下网络请求一切正常,换上9.0一直报一个异常 我用的网络框架retrofit

java.net.UnknownServiceException: CLEARTEXT communication to qpi.zhenghongwy.com not permitted by network security policy

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

有人认为 Android P 上所有的 App 都需要使用 TLS 加密会降低上网体验,事实上这是一种误解,至于 App 对于少数旧服务器的连接如果非要使用明码传输,开发者需要更改 App 的网络安全配置以允许此类连接。

经过查阅资料和查看9.0新特性确定网络安全传输问题,那么就找解决方案

1、在res下创建一个xml文件夹,在xml下面创建network_security_config.xml

xml内容为

<?xml version="1.0" encoding="utf-8"?>    

2、在AndroidManifest.xml下的application节点下配置

android:networkSecurityConfig="@xml/network_security_config"

3、接口地址http改用https

4、搞定

更多相关文章

  1. Nginx系列教程(六)| 手把手教你搭建 LNMP 架构并部署天空网络电影
  2. Android时间获取与使用
  3. Java乔晓松-android使用ImageSwitcher布局的电子相册&服务器获取
  4. Android组件 子菜单(SubMenu)
  5. Android异步操作UI界面的四种方法(载至网络 )
  6. Android(安卓)检查网络是否连接
  7. Android(安卓)网络编程
  8. Android网络变化全局监听
  9. android 用BroadcastReceiver监听网络~

随机推荐

  1. Android创建本地服务器笔记
  2. Kotlin初体验
  3. Android(安卓)环境搭建
  4. Android(安卓)开发四大天王 四大组件
  5. Android下的POS打印机调用
  6. Android监听键盘显示和隐藏
  7. Android(安卓)studio 更新android SDK
  8. Android面试知识点1
  9. Android(安卓)NDK初识
  10. Android中的Intent标准跳转应用