首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修改文件上传套接字超时和异常

修改文件上传套接字超时和异常
EN

Stack Overflow用户
提问于 2016-08-01 13:27:12
回答 1查看 1.7K关注 0票数 3

在我的android应用程序中,当我想上传一个大小为2MB或更大的文件时,它会抛出这个异常:

代码语言:javascript
复制
java.net.SocketTimeoutException: timeout at java.lang.Thread.run(Thread.java:841)
caused by: java.net.SocketException: Socket is closed at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.checkOpen(OpenSSLSocketImpl.java:237) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.access$100(OpenSSLSocketImpl.java:63) at
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLOutputStream.write(OpenSSLSocketImpl.java:723) at
okio.Okio$1.write(Okio.java:80) at
okio.AsyncTimeout$1.write(AsyncTimeout.java:155)

上传少于2MB是没有问题的,而且一切都很好。

如何修改文件上传套接字超时和异常?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-01 14:30:08

好吧,对于像我这样可能被困在这个问题上的人来说,我必须说这个异常是有一些原因的,比如弱连接,wifi信号差,低读写和连接超时等。

检查所有的情况,如果没有得到工作,你可以使用下面的行:

最后,我添加了下面这行代码:

代码语言:javascript
复制
OkHttpClient.setRetryOnConnectionFailure(true);

并设置更多的超时时间

代码语言:javascript
复制
OkHttpClient.setConnectTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setReadTimeout(10, TimeUnit.MINUTES);
OkHttpClient.setWriteTimeout(10, TimeUnit.MINUTES);

我想知道设置这10分钟会不会有问题?如果有人能告诉我我将不胜感激

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38691569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档