使用办法
在app/build.gradle(Module:)中的android结点下添加如下镜像:
useLibrary 'org.apache.http.legacy'
异常处理
如果运行时仍包HTTPClient的异常:W/System.err: java.io.IOException: Cleartext traffic not permitted
解决方法:
步骤1:创建一个network_security_config.xml 文件 res/xml/路径下:
network_security_config.xml:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</信任锚>
</base-config>
</network-security-config>
步骤2:在您的 AndroidManifest.xml 中添加如下两个标签:
<?xml version="1.0" encoding="utf-8"?>
<manifest......>
<application android:networkSecurityConfig="@xml/network_security_config">
<activity..../>
... ......
......
<uses-library
android:name="org.apache.http.legacy"
android:required="false"/>
</application>
在Android SDK 22及以上版本,由于HTTPClient被弃用,但为了稳定性仍想使用,可以采取特殊配置。首先,在app/build.gradle(Module:)中启用HttpClient库。然后,针对`Cleartexttrafficnotpermitted`异常,需要创建一个network_security_config.xml文件,允许明文流量,并在AndroidManifest.xml中引用此配置。这样,即使在高版本SDK中,也能正常使用HttpClient并处理异常。
667

被折叠的 条评论
为什么被折叠?



