Android Studio使用HttpURLConnection出现明文HTTP流量不允许错误如何解决
修复方案
按排查优先级给出以下操作步骤:
- 检查配置位置是否正确
确认android:networkSecurityConfig属性是添加在AndroidManifest.xml的<application>标签下,而非其他标签内,示例配置如下:<application android:icon="@mipmap/ic_launcher" android:label="@string/app_name" <!-- 正确位置添加网络安全配置 --> android:networkSecurityConfig="@xml/network_security_config"> <!-- Activity、Service等组件注册 --> </application> - 确认已添加网络权限
在AndroidManifest.xml的<manifest>根标签下(<application>标签外)添加网络权限声明:<uses-permission android:name="android.permission.INTERNET" /> - 临时用全局明文配置验证
调试阶段可以先简化network_security_config.xml为全局允许明文请求,排除域名配置错误问题:
也可以直接在<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true"/> </network-security-config><application>标签下添加android:usesCleartextTraffic="true"属性替代单独的网络安全配置文件,实现全局明文权限开启。 - 清除旧缓存重新安装
修改配置后需要完全卸载设备上的旧版应用,再重新编译安装运行,避免配置缓存不生效。 - 验证代码逻辑正确性
可以先将请求地址替换为https://www.android.com,无需额外明文配置即可请求,验证你的网络请求代码本身不存在逻辑问题。
内容的提问来源于stack exchange,提问作者user3063547
相关产品推荐
相关产品推荐

