AndroidSocketClient开源库的使用

我发现网上关于socket的库介绍比较少啊,难道socket太简单了,大家不喜欢做?哈哈哈这里写图片描述

我给大家推荐一个socketclient库,用起来特别方便,主要是源于前几天公司需要长连接,正好逛GitHub的时候发现的这个库,挺爽挺方便的,推荐给大家。

git:https://github.com/vilyever/AndroidSocketClient

下载完导入,然后再gradle中添加

                repositories {
              maven { url "https://jitpack.io" }
              }
              dependencies {
  compile 'com.github.vilyever:AndroidSocketClient:1.4.1'
}

至于用法也是非常简单

     private SocketClient socketClient;

创建scoketClient.

    socketClient = new SocketClient(url, prot);

里面传入socketClient的url地址和端口号。
socketClient.registerSocketDelegate(new SocketClient.SocketDelegate(){

        @Override
        public void onConnected(SocketClient client) {
            socketClient.send("hello, server !--------------------------->Android");
            socketClient.setHeartBeatMessage("hello, server !--------------------------->Android");
        }

        @Override
        public void onDisconnected(SocketClient client) {
            Log.i("Server", "timeout");
            String error = client.getCharsetName();
            Log.i("Server", "timeoutData:"+error);

        }

        @Override
        public void onResponse(SocketClient client, @NonNull SocketResponsePacket responsePacket) {
            String responseMsg = responsePacket.getMessage();
            int i = 1;
            Log.i("Server", responseMsg);
        }
    });

这个方法直接实现了socket发送信息到服务器,在onDisconnected()错误信息也可以及时返回并打印。

    socketClient.setConnectionTimeout(1000 * 15);
    socketClient.setHeartBeatInterval(1000);
    socketClient.setRemoteNoReplyAliveTimeout(1000 * 60);
    socketClient.setCharsetName("UTF-8");
    socketClient.connect();

这边设置的是超时时间,心跳包的间隔, 自动连接时间,编码格式。
是不是用起来特别爽?
因为库也是国人写的,注释都是中文,大家可以扒一扒源代码看如何实现, 毕竟学东西不只是学如何使用,还要追求原理的。

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值