概述
导包
implementation 'com.squareup.okhttp3:mockwebserver:3.8.1'
建立 WebSocket 连接
OkHttpClient mOkHttpClient = new OkHttpClient.Builder()
.pingInterval(40, TimeUnit.SECONDS) // 设置 PING 帧发送间隔---包活
.build();
Request request = new Request.Builder()
.url(url)
.build();
使用 WebSocketListener
WebSocketListener 是一个抽象类,其中定义了比较多的方法,借助这些方法回调,就可以完成对 WebSocket 的所有操作。
mOkHttpClient.newWebSocket(request, new WebSocketListener() {
@Override
public void onOpen(WebSocket webSocket, Response response) {
super.onOpen(webSocket, response);
// WebSocket 连接建立
}
@Override
public void onMessage(WebSocket webSocket, String text) {
super.onMessage(webSocket, text);
// 收到服务端发送来的 String 类型消息
/**
* 在这里对收到的信息进行处理
*/
}
@Override
public void onClosing(WebSocket webSocket, int code, String reason) {
super.onClosing(webSocket, code, reason);
//客户端主动关闭时回调
}
@Override
public void onClosed(WebSocket webSocket, int code, String reason) {
super.onClosed(webSocket, code, reason);
// WebSocket 连接关闭
}
@Override
public void onFailure(WebSocket webSocket, Throwable t, Response response) {
super.onFailure(webSocket, t, response);
// 出错了
}
});
mOkHttpClient.dispatcher().executorService().shutdown();
发送消息
JSONObject jsonObject = new JSONObject();
jsonObject.put("xxxxxx", xxxxx);
mWebSocket.send(jsonObject.toString());
最后
以上就是清秀彩虹为你收集整理的OkHttp实现WebSocket的全部内容,希望文章能够帮你解决OkHttp实现WebSocket所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复