我要用 glide 去网上去加载一个图片

ImageView iv = findViewById(R.id.iv);
Glide.with(this).load(url).into(iv);

url 是 ip 加端口的形式 结果报错了

class com.bumptech.glide.load.engine.GlideException: Failed to load resource
Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, REMOTE
Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
Cause (1 of 1): class java.io.IOException: Cleartext HTTP traffic to **.***.***.*** not permitted

之后 我使用域名访问就可以正常访问 这是有什么限制吗?

 

5 条回复    2021-03-31 10:47:43 +08:00
hstan
    1

hstan   6 天前   ❤️ 1

“Cleartext HTTP traffic to **.***.***.*** not permitted”
看起来是 android P 的网络限制吧
试试在 xml 下的 network-security-config 里增加你们的 ip 配置
kingiis
    2

kingiis   6 天前

试错法
先加载一个本地图片
然后加载一个 http 图片
然后加载一个 https 图片
然后加载一个带端口图片
hmhm7442
    3

hmhm7442   6 天前

参考 1 楼,高版本 android 禁止 http 明文
iture
    4

iture   6 天前

再说一个方法,是在 AndroidManifest 文件中的 <application> 节点中增加一个 useHTTPClearText (好像是这个名字)配置,并设置为 true 。
ZoteTheMighty
    5

ZoteTheMighty   6 天前

Cleartext HTTP traffic. 很明显了, 不能使用明文传输,需要适配下高版本的 Android 。