Android9.0 http明文

当Android Studio的targetSDK升级到28(即Android 9.0 Pie),应用的HTTP请求会被阻止,因为Android P默认不允许明文流量。官方文档指出,为保障安全,Android P要求使用加密连接。解决方案包括:1) 将网络请求切换到HTTPS;2) 降低targetSdkVersion至27以下;3) 创建`network_security_config.xml`文件配置允许HTTP。通过在AndroidManifest.xml中引用此配置,可以恢复HTTP请求的能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题概述

AndroidStudio将targetSDK升为28后,http请求会无反应,查看logcat中,OkHttp抛出错误。OkHttp3 做了检查,所以如果使用了明文流量,默认情况下,在 Android P 版本 OkHttp3 就抛出异常: CLEARTEXT communication to " + host + " not permitted by network security policy.

if (!Platform.get().isCleartextTrafficPermitted(host)) {
      throw new RouteException(new UnknownServiceException(
          "CLEARTEXT communication to " + host + " not permitted by network security policy"));
          }

查看官方文档

AndroidP行为变更:https://developer.android.com/about/versions/pie/android-9.0-changes-all?hl=zh-cn

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值