HttpClient 4.X重新打包
放弃
useLibrary 'org.apache.http.legacy'
我想继续使用HttpClient(同时我也维护基于它的库和项目),但是使用API 23,这些类已经消失了。
那么没有去与useLibrary
解决方法,但不能用于进一步发展(类不自动完成,一切都显示为无效的代码)
我们也可以选择使用HttpClient提供的HttpClient 4.3.5.1的 Android分支,但它不提供Android在API <22上提供的类/头/接口,因此它编译,但我们仍然无法有效开发。
是否有任何完整的HttpClient库重新打包(有利的是甚至高于4.3的版本),可以进一步使用版本23的目标/编译Sdk?
我能找到的最新完整重新包装是https://code.google.com/p/httpclientandroidlib/,它使用版本4.3.2
我还添加了对HC JIRA问题的评论https://issues.apache.org/jira/browse/HTTPCLIENT-1632
这个解决方法可能仅在HttpClient 5.X才会被发布,因为它应该有完全不同的包名称。
那么,为了回答我自己的问题,我已经提出了项目,该项目将HttpClient,HttpCore和HttpClient-Cache包与HttpClient重新包装并构建到不同的名称空间中。
目前提供的版本是4.3.3 (与ASF HC 4.3.3版本同步)
https://github.com/smarek/httpclient-android
这是非常可定制的,所以更改包/工件名称或版本,根据需要调整构建等应该不成问题。
它也发布在Maven Central的标识符cz.msebera.android:httpclient:4.3.3
并且当前使用org.apache.http
所有代码导入都应该被迁移(为了使用这个库)到cz.msebera.android.httpclient