【发布时间】:2021-12-09 05:18:16
【问题描述】:
我想从 Android okhttp3 websocket 客户端发送消息,而不仅仅是回显来自服务器的消息。这是我的 websocket 类:
// Websocket
public final class EchoWebSocketListener extends WebSocketListener {
private static final int NORMAL_CLOSURE_STATUS = 1000;
@Override
public void onOpen(WebSocket webSocket, Response response) {
webSocket.send(message);
}
@Override
public void onMessage(WebSocket webSocket, String text) {
printer("text");
}
@Override
public void onClosing(WebSocket webSocket, int code, String reason) {
webSocket.close(NORMAL_CLOSURE_STATUS, null);
}
@Override
public void onFailure(WebSocket webSocket, Throwable t, Response response) {
}
public void send(WebSocket webSocket) {
webSocket.send(finalMessage);
}
}
这是我从 onCreate 方法中调用它的方式:
client= new OkHttpClient();
Request request = new Request.Builder().url(Url).build();
EchoWebSocketListener listener = new EchoWebSocketListener();
webso = myClient.newWebSocket(request, listener);
client.dispatcher().executorService().shutdown();
我尝试为该类创建一个对象并调用我将其命名为“发送”的函数:
EchoWebSocketListener object = new EchoWebSocketListener ()
object.send(webso)
但这不起作用?
【问题讨论】:
-
没有 RxJava 的替代方式stackoverflow.com/a/46628736/7377682
标签: java android http websocket okhttp