Folks It is not a big secret that Google decided to continue shipping the extremely outdated pre-BETA version of HttpClient instead of upgrading to a newer version and to steer Android users toward HttpUrlConnection API. I understand they must have their good reasons. At the same, those people who may not share Google's enthusiasm about having to migrate to HttpUrlConnection are left with no viable upgrade options as stock versions of HttpClient cannot be used in Android. A very common work-around to this problem is to move HttpClient code to a different namespace in order to avoid classloader conflicts with Android code. This can be done either using Maven Shade plugin or a script such as one developed by Dirk Boye [1]. The downside of this work-around is that the shaded HttpClient cannot be used with 3rd party libraries such as Spring compiled against the standard API.
A better approach might be to 'shade' only implementation classes only and compile them against the API interfaces and classes shipped with Android. This could produce a reasonably up to date version of HttpClient which at the same time can be used as a drop-in replacement for the outdated Android version. What I would like to do is to take HttpClient 4.1.3 release tag and create an Android compatible re-spin with a distinct Maven artifact from that tag. If you think this is not a good idea please raise your concerns now. If I hear no objections, I'll proceed with the development of HttpClient version for Android and will call a release vote when ready. Oleg [1] http://code.google.com/p/httpclientandroidlib/ --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
