How to reconnect okhttp-ws(如何重新连接okhttp-ws)
本文介绍了如何重新连接okhttp-ws的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果IP地址更改或连接失败,如何正确重新连接?
我正在尝试重新连接okhttp-ws
.....
@Override
public void onFailure(IOException e, okhttp3.Response response) {
try {
connecting();
} catch (Exception e1) {
Timber.e(e1, "onFailure");
}
}
@Override
public void onClose(int code, String reason) {
Timber.d("Connection unexpectedly closed");
connecting();
}
public void connecting() {
if (wsClient == null) {
wsClient = builder.build();
if (call != null) call.cancel();
call = WebSocketCall.create(wsClient, request);
try {
lock.lockInterruptibly();
try { call.enqueue(listener);
} finally {
lock.unlock();
}
} catch (InterruptedException e) {
Timber.e(e, "connecting error");
}
}
我收到一个错误
Java.lang.Rty异常:无法启动服务...(有 Extras)}:java.util.concurrent.RejectedExecutionException:任务 OkHtp3.RealCall$AsyncCall@3f946389被拒绝,来自 Java.util.concurrent.ThreadPoolExecutor@d784f8e[Terminated,池大小 =0,活动线程=0,排队任务=0,已完成任务=1] 在… Android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3320)
推荐答案
参见Example and My Easylibrary
...
try{
WebsocketClient.dispatcher().cancelAll();// to cancel all requests
}...
触发失败(...)您可以重新连接
这篇关于如何重新连接okhttp-ws的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:如何重新连接okhttp-ws
基础教程推荐
猜你喜欢
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01