Android OkHttp 3.5 webSocket不保持连接
现在在OKHTTP3.5中包含web套接字,我希望使用它。但我有一个问题,如果我平均30分钟不使用应用程序,插座就会断开。为什么,我怎么能做“永恒”连接?第二个问题,如何检查插座连接 辛顿类Android OkHttp 3.5 webSocket不保持连接,android,sockets,okhttp3,okhttp,Android,Sockets,Okhttp3,Okhttp,现在在OKHTTP3.5中包含web套接字,我希望使用它。但我有一个问题,如果我平均30分钟不使用应用程序,插座就会断开。为什么,我怎么能做“永恒”连接?第二个问题,如何检查插座连接 辛顿类 public class ServerSocket { @Singleton public OkHttpClient getOkHttpClient(){ return new OkHttpClient(); } @Singleton public
public class ServerSocket {
@Singleton
public OkHttpClient getOkHttpClient(){
return new OkHttpClient();
}
@Singleton
public Request getRequest(){
return new Request.Builder()
.url(Link.url_socket)
.build();
}
}
我的connect类:
OkHttpClient client = serverSocket.getOkHttpClient();
Request request = serverSocket.getRequest();
WebSocketListener webSocketListener = new WebSocketListener() {
@Override
public void onOpen(WebSocket webSocket, Response response) {
super.onOpen(webSocket, response);
Log.e("connect socket", "connect socket");
}
@Override
public void onMessage(WebSocket webSocket, String text) {
super.onMessage(webSocket, text);
Log.e("onMessage", text);
}
@Override
public void onMessage(WebSocket webSocket, ByteString bytes) {
super.onMessage(webSocket, bytes);
Log.e("onMessage", "onMessage");
}
@Override
public void onClosing(WebSocket webSocket, int code, String reason) {
super.onClosing(webSocket, code, reason);
Log.e("onClosing", "onClosing");
}
@Override
public void onClosed(WebSocket webSocket, int code, String reason) {
super.onClosed(webSocket, code, reason);
Log.e("onClosed", "onClosed");
}
@Override
public void onFailure(WebSocket webSocket, Throwable t, Response response) {
super.onFailure(webSocket, t, response);
Log.e("onFailure", "onFailure");
}
};
socket = client.newWebSocket(request, webSocketListener);
这是okhttp中的错误,请检查此问题