I'm getting SSL Handshake exception on some devices. I think that XML parser should be more robust and not crash whole app when there is I/O error. I'll submit PR with bugfix later
Fatal Exception: java.lang.RuntimeException: An error occured while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setException(FutureTask.java:222) at java.util.concurrent.FutureTask.run(FutureTask.java:242) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818) Caused by java.lang.RuntimeException: javax.net.ssl.SSLHandshakeException: SSL handshake aborted: ssl=0x558f26a0c0: I/O error during system call, Connection reset by peer at com.github.javiersantos.appupdater.RssParser.getInputStream(RssParser.java:63) at com.github.javiersantos.appupdater.RssParser.parse(RssParser.java:35) at com.github.javiersantos.appupdater.UtilsLibrary.getLatestAppVersionXml(UtilsLibrary.java:247) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:57) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:13) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818) Caused by javax.net.ssl.SSLHandshakeException: SSL handshake aborted: ssl=0x558f26a0c0: I/O error during system call, Connection reset by peer at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(NativeCrypto.java) at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:302) at com.android.okhttp.Connection.upgradeToTls(Connection.java:197) at com.android.okhttp.Connection.connect(Connection.java:151) at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:276) at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:211) at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:373) at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:323) at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:190) at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210) at com.android.okhttp.internal.http.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25) at com.github.javiersantos.appupdater.RssParser.getInputStream(RssParser.java:58) at com.github.javiersantos.appupdater.RssParser.parse(RssParser.java:35) at com.github.javiersantos.appupdater.UtilsLibrary.getLatestAppVersionXml(UtilsLibrary.java:247) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:57) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:13) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818)
I'm getting SSL Handshake exception on some devices. I think that XML parser should be more robust and not crash whole app when there is I/O error. I'll submit PR with bugfix later
Fatal Exception: java.lang.RuntimeException: An error occured while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setException(FutureTask.java:222) at java.util.concurrent.FutureTask.run(FutureTask.java:242) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818) Caused by java.lang.RuntimeException: javax.net.ssl.SSLHandshakeException: SSL handshake aborted: ssl=0x558f26a0c0: I/O error during system call, Connection reset by peer at com.github.javiersantos.appupdater.RssParser.getInputStream(RssParser.java:63) at com.github.javiersantos.appupdater.RssParser.parse(RssParser.java:35) at com.github.javiersantos.appupdater.UtilsLibrary.getLatestAppVersionXml(UtilsLibrary.java:247) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:57) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:13) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818) Caused by javax.net.ssl.SSLHandshakeException: SSL handshake aborted: ssl=0x558f26a0c0: I/O error during system call, Connection reset by peer at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(NativeCrypto.java) at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:302) at com.android.okhttp.Connection.upgradeToTls(Connection.java:197) at com.android.okhttp.Connection.connect(Connection.java:151) at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:276) at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:211) at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:373) at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:323) at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:190) at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210) at com.android.okhttp.internal.http.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25) at com.github.javiersantos.appupdater.RssParser.getInputStream(RssParser.java:58) at com.github.javiersantos.appupdater.RssParser.parse(RssParser.java:35) at com.github.javiersantos.appupdater.UtilsLibrary.getLatestAppVersionXml(UtilsLibrary.java:247) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:57) at com.github.javiersantos.appupdater.UtilsAsync$LatestAppVersion.doInBackground(UtilsAsync.java:13) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:818)