Getting java.net.SocketTimeoutException: Connection timed out in android
2016-02-15 09:26
836 查看
可能是设置HttpConnectionParams.setConnectionTimeout(params, 8*1000)超时时间太短导致。大于7*1000ms试试。
错误描述:
Logcat:
回答引自:http://stackoverflow.com/questions/15608499/getting-java-net-sockettimeoutexception-connection-timed-out-in-android
I’ve searched all over the web and after reading lot of docs regarding connection timeout exception, the thing i understood is that, preventing SocketTimeoutException is beyond our limit…One way to effectively handle it is to define a connection timeout and later handle it by using a try catch block…. hope this will help anyone in future who are facing the same issue.
错误描述:
Logcat:
[code]03-25 10:55:32.613: W/System.err(18868): java.net.SocketTimeoutException: Connection timed out 03-25 10:55:32.617: W/System.err(18868):at org.apache.harmony.luni.platform.OSNetworkSystem.connect(Native Method) 03-25 10:55:32.617: W/System.err(18868):at dalvik.system.BlockGuard $WrappedNetworkSystem.connect(BlockGuard.java:357) 03-25 10:55:32.617: W/System.err(18868):at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:204) 03-25 10:55:32.617: W/System.err(18868):at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:437) 03-25 10:55:32.617: W/System.err(18868):at java.net.Socket.connect(Socket.java:1002) 03-25 10:55:32.621: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init> (HttpConnection.java:75) 03-25 10:55:32.621: W/System.err(18868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init> (HttpConnection.java:48)03-25 10:55:32.624: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect (HttpConnection.java:322)03-25 10:55:32.624: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get (HttpConnectionPool.java:89)03-25 10:55:32.628: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpCon nection(HttpURLConnectionImpl.java:285) 03-25 10:55:32.628: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConn ection(HttpURLConnectionImpl.java:267) 03-25 10:55:32.636: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect (HttpURLConnectionImpl.java:205) 03-25 10:55:32.636: W/System.err(18868):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getOutputS tream(HttpURLConnectionImpl.java:614) 03-25 10:55:32.636: W/System.err(18868):at com.myapp.core.JSONRequest.RequestWithHttpUrlConn(JSONRequest.java:63) 03-25 10:55:32.636: W/System.err(18868): at com.myapp.core.DetailPage $AsyncRecBooks.doInBackground(AKBookDetailView.java:265) 03-25 10:55:32.640: W/System.err(18868): at com.myapp.core.DetailPage $AsyncRecBooks.doInBackground(AKBookDetailView.java:1) 03-25 10:55:32.640: W/System.err(18868): at android.os.AsyncTask$2.call (AsyncTask.java:185) 03-25 10:55:32.640: W/System.err(18868): at java.util.concurrent.FutureTask $Sync.innerRun(FutureTask.java:306) 03-25 10:55:32.640: W/System.err(18868): at java.util.concurrent.FutureTask.run (FutureTask.java:138) 03-25 10:55:32.640: W/System.err(18868): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088) 03-25 10:55:32.648: W/System.err(18868): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581) 03-25 10:55:32.648: W/System.err(18868): at java.lang.Thread.run(Thread.java:1019) 03-25 10:55:32.652: E/JSON Parser(18868): Error parsing data org.json.JSONException: End of input at character 0 of
回答引自:http://stackoverflow.com/questions/15608499/getting-java-net-sockettimeoutexception-connection-timed-out-in-android
I’ve searched all over the web and after reading lot of docs regarding connection timeout exception, the thing i understood is that, preventing SocketTimeoutException is beyond our limit…One way to effectively handle it is to define a connection timeout and later handle it by using a try catch block…. hope this will help anyone in future who are facing the same issue.
[code]HttpUrlConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(7000); //set the timeout in milliseconds
相关文章推荐
- Android 查看pdf文档——PDFView
- android:ellipsize实现跑马灯效果总结
- Android 知识图谱
- Android学习笔记之Serializable和Parcelable的区别
- android 入门 006(sqlite增删改查)
- android 有阻尼下拉刷新列表的实现
- Android一步步深入理解View(一):LayoutInflater的使用和原理分析
- Android Studio工程中”R“文件的位置
- 一个难倒 3年 android开发经验 " 工程师 " 的 "bug"
- android proxy settings with lantern
- android View的点击事件分发机制的简单认知
- Android开发之语言国际化
- Android LBS
- 通过adb连接win7与android
- android 学习 day day up
- android开发搜集
- ANDROID_MARS学习笔记_S01原始版_010_ContentProvider
- 王学岗仿QQ页面滑动
- android 批量上传图片
- 【Android高级】RxJava2.0和Retrofit2.0的使用探究