WebSocket轻松搞定移动客户端长连接

简单六步教你们玩转WebSocket!

1、gradle导入WebSocket,我这边使用的是目前最新的1.5.2版本。

implementation 'org.java-websocket:Java-WebSocket:1.5.2'

 

2、创建WebSocketClient类

public class JWebSocketClient extends WebSocketClient {
    
    public JWebSocketClient(URI serverUri) {
        super(serverUri, new Draft_6455());
    }

    @Override
    public void onOpen(ServerHandshake handshakedata) {
        Log.e("JWebSocketClient", "onOpen()");
    }

    @Override
    public void onMessage(String message) {
        Log.e("JWebSocketClient", "onMessage()");
    }

    @Override
    public void onClose(int code, String reason, boolean remote) {
        Log.e("JWebSocketClient", "onClose()");
    }

    @Override
    public void onError(Exception ex) {
        Log.e("JWebSocketClient", "onError()--》"+ex.toString());
    }
}

3、初始化WebSocketClient类,且接收数据库反馈数据。


try {
    uri = new URI("ws://IP地址:端口");
    chatClient = new JWebSocketClient(uri) {
        @Override
        public void onMessage(String message) {
            super.onMessage(message);
            if (!message.isEmpty()) {
               tv_content.setText(message);
               Log.e("接收到的数据:", message);
            }
        }
    };
} catch (URISyntaxException e) {
     e.printStackTrace();
}

4、客户端请求连接数据库,推荐使用connectBlocking()

//WebSocket连接服务器
if (chatClient != null && !chatClient.isOpen()) {
   try {
       chatClient.connectBlocking();
   } catch (InterruptedException e) {
       e.printStackTrace();
   }
}

5、给服务器发送数据

//WebSocket发送数据到服务器
if (chatClient != null && chatClient.isOpen()) {
    chatClient.send("你好,大帅B");
}

6、断开关闭跟服务器连接

/**
 * 断开连接
 */
private void closeConnect() {
    try {
        if (null != chatClient) {
            chatClient.close();
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        chatClient= null;
    }
}

当然还有第七步,这才是重点,看完你就明白了,源码地址:https://download.csdn.net/download/baozouge_0606/19548398

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丁氏开发工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值