Android使用Volley框架显示“Cleartext HTTP traffic to XXX not permitted”的解决方法

Volley是谷歌推出的一款用于网络操作的框架,对于通信频繁但数据量不大的网络操作来说还是挺好用的。但笔者在自己的手机上调试程序时发现,程序中与Volley相关的网络操作无法成功,logcat显示的是“Cleartext HTTP traffic to XXX not permitted”,查了很久发现原因是Android最新的几个版本中,出于安全考虑,默认禁止所有未加密的连接。
解决方法如下:
1、在AndroidManifest.xml文件中添加一行:

android:usesCleartextTraffic="true"

2、如果添加了上述代码程序还是无法运行,并出现闪退或报错“Didn’t find class “org.apache.http.ProtocolVersion” on path”的情况(笔者就是这样),解决方法如下:
再在AndroidManifest.xml文件中添加以下代码:

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

如果有更好的解决方法也欢迎大家留言讨论。

你可能感兴趣的:(Android开发)