【问题标题】:java.net.SocketTimeoutException: Connection timed out, from one day to another without code changejava.net.SocketTimeoutException:连接超时,从一天到另一天,无需更改代码
【发布时间】:2012-12-07 22:13:39
【问题描述】:

我在 GooglePlay 中有一个应用程序,大约在 6 个月前发布,它运行良好每次直到今天。 p>

没有任何代码修改从一天到另一天我得到了这个错误:

12-07 14:51:09.646: W/System.err(23695): java.net.SocketTimeoutException: Connection timed out
12-07 14:51:09.673: W/System.err(23695):    at org.apache.harmony.luni.platform.OSNetworkSystem.connect(Native Method)
12-07 14:51:09.673: W/System.err(23695):    at dalvik.system.BlockGuard$WrappedNetworkSystem.connect(BlockGuard.java:357)
12-07 14:51:09.677: W/System.err(23695):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:204)
12-07 14:51:09.677: W/System.err(23695):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:437)
12-07 14:51:09.677: W/System.err(23695):    at java.net.Socket.connect(Socket.java:1002)
12-07 14:51:09.681: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:75)
12-07 14:51:09.681: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:48)
12-07 14:51:09.681: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect(HttpConnection.java:322)
12-07 14:51:09.685: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:89)
12-07 14:51:09.689: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpConnection(HttpURLConnectionImpl.java:285)
12-07 14:51:09.689: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConnection(HttpURLConnectionImpl.java:267)
12-07 14:51:09.689: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieveResponse(HttpURLConnectionImpl.java:1018)
12-07 14:51:09.689: W/System.err(23695):    at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:512)
12-07 14:51:09.692: W/System.err(23695):    at java.net.URL.openStream(URL.java:645)
12-07 14:51:09.696: W/System.err(23695):    at com.MyPackageName.XML.MyDownloadingTask.doInBackground(MyDownloadingTask.java:95)
12-07 14:51:09.696: W/System.err(23695):    at com.MyPackageName.XML.MyDownloadingTask.doInBackground(MyDownloadingTask.java:1)
12-07 14:51:09.704: W/System.err(23695):    at android.os.AsyncTask$2.call(AsyncTask.java:185)
12-07 14:51:09.708: W/System.err(23695):    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
12-07 14:51:09.708: W/System.err(23695):    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
12-07 14:51:09.708: W/System.err(23695):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
12-07 14:51:09.708: W/System.err(23695):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
12-07 14:51:09.708: W/System.err(23695):    at java.lang.Thread.run(Thread.java:1019)

我没有更改代码中的任何一行,现在我的应用程序无法运行。它与启动时的 url 连接有关,所以现在它对这个愚蠢的 appear-from-nowhere 错误没有任何作用。

从浏览器我可以访问想要的 url,因此服务器是可响应的......

请,如果有人知道它是什么,请帮助我。 谢谢, 亚当

【问题讨论】:

    标签: android url socketexception


    【解决方案1】:

    网络和服务器不可靠。您的代码可能是完美的,但您仍然可能会遇到丢失数据包的网络或响应不够快的服务器。

    【讨论】:

    • 那么解决办法是什么?也许我们需要对超时应用另一个保护源?此应用在每次启动时都需要此 url 连接。
    • 如果网络不可用或远程服务器速度慢/速度慢,您希望您的应用程序如何运行?它应该无限期地重试吗?打印错误并放弃?您绝对应该在连接开始时和连接中间处理此类错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-01
    • 1970-01-01
    • 2017-09-22
    • 2017-05-24
    • 2015-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多