【发布时间】:2015-07-07 10:28:30
【问题描述】:
我有以下设置:
final OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setReadTimeout(5, TimeUnit.SECONDS);
okHttpClient.setConnectTimeout(5, TimeUnit.SECONDS);
RestAdapter.Builder builder = new RestAdapter.Builder()
.setEndpoint(ROOT)
.setClient(new OkClient(okHttpClient))
.setLogLevel(RestAdapter.LogLevel.FULL);
我正在尝试处理我的服务器关闭并且用户收到连接超时异常的情况,这是我的日志记录:
java.net.SocketTimeoutException: failed to connect to /192.168.0.53 (port 3000) after 5000ms
完整记录:http://pastebin.com/gscCGb7x
有没有办法将这个路由到改造故障方法中,以便我可以在那里处理它?
提前致谢!
【问题讨论】:
-
在我的应用程序中,我确实将 SocketTimeoutExceptions 传递给了包含在 RetrofitExceptions 中的失败方法。你确定你没有把它们送到那里吗?它们也可能记录在其他地方,但应该传递给 failure()。
-
嗯很奇怪,我做了一些调试,现在它可以工作了:S.
-
嗨 jdruwe,你能设法捕捉到连接异常吗?我也想做同样的事情。谢谢
标签: android retrofit connection-timeout okhttp