javax.net.ssl.SSLException: Ошибка чтения: ssl = 0x56e63588: ошибка ввода-вывода во время системного вызова, сброс соединения по пиру

Я использовал с помощьюorg.apache.http.client.HttpClient загрузить некоторые данные с HTTP-сервера за последние 2 года, и он работает нормально.

Недавно мы перешли на HTTPS по некоторым причинам безопасности. Это также нормально работает с Wi-Fi и высокоскоростной мобильной передачей данных (3G). Но чаще всего с медленным подключением к данным (2G) Моя загрузка прерывается с последующей трассировкой стека.

 javax.net.ssl.SSLException: Read error: ssl=0x56e63588: I/O error during system call, Connection reset by peer
    at com.android.org.conscrypt.NativeCrypto.SSL_read(Native Method)
    at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:690)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:103)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.read(AbstractSessionInputBuffer.java:120)
    at org.apache.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:131)
    at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:140)
    at java.io.FilterInputStream.read(FilterInputStream.java:114)

Вот как выглядит мой код:

                HttpPost httpPost = new HttpPost(url);
                UrlEncodedFormEntity p_entity = new UrlEncodedFormEntity(
                        params, HTTP.UTF_8);
                httpPost.setEntity(p_entity);
                response = httpClient.execute(httpPost);
                DataInputStream in = new               DataInputStream(response.getEntity().getContent());
                String st = "";
                result = new Vector<String>();
                while ((st = readLine(in)) != null) {
                result.addElement(st);
         }

Ответы на вопрос(1)

Ваш ответ на вопрос