android-library icon indicating copy to clipboard operation
android-library copied to clipboard

Replace used http client library

Open AndyScherzinger opened this issue 8 years ago • 8 comments

At the moment the Nextcloud library uses a very old Apache http client library commons-httpclient-3.1. Thus I propose to move on to the latest stable release which is described here: https://hc.apache.org/httpcomponents-client-4.5.x/android-port.html - httpclient-android-4.3.5.1 targeting Android 22 or lower or httpclient-android-4.4.1.1 respectively targeting Android 23 of higher or use libraries like OkHttp, Volley or others.

cc @tobiasKaminsky for discussion on this topic

Asked for compatibility here: https://github.com/smarek/httpclient-android/issues/12

AndyScherzinger avatar Sep 10 '16 13:09 AndyScherzinger

Since there's JSON all around, maybe go for Retrofit?

mario avatar Jan 16 '17 07:01 mario

Hi @mario unfortunately the issue here is related to the http client lib being a dependency of the used webdav client library (which is XML based) and there is no fully functional and supported webdav client lib except Jackrabbit (which uses a very old Apache http client library) 😞

AndyScherzinger avatar Jan 16 '17 08:01 AndyScherzinger

@AndyScherzinger thanks for the clarification.

mario avatar Jan 16 '17 08:01 mario

I tried building with httpclient 4.3 but the ssl handshake problem still occurs.

PeterEdens avatar Feb 10 '17 04:02 PeterEdens

Is the inability to use a current/modern httpc library the reason that chunked transfers are not supported? I'm trying to fully understand where this bug is rooted, as it makes the client unusable on Android if the server is using OpenBSD httpd, as all transfers are always marked as chunked (and the HTTP spec requires all clients to support chunked file encodings).

rpcameron avatar Oct 03 '17 14:10 rpcameron

@rpcameron I'd guess no, since we support chunked uploads already. The inability to use a modern httpc lib prevents ipv6... :(

AndyScherzinger avatar Oct 03 '17 17:10 AndyScherzinger

@AndyScherzinger The problem is not chunked uploads, but rather chunked downloads. On the Android client the file appears to download fine, but then fails. The issue in the client is that all chunked downloads fail, and has been acknowledged as the root for the error.

rpcameron avatar Oct 03 '17 19:10 rpcameron

This is being worked on right now: I switched get activity operation already to newest v2 system.

tobiasKaminsky avatar Jan 07 '20 06:01 tobiasKaminsky