android c语言 socket,CSocket

这段代码主要展示了如何使用CSocket实例初始化并设置监听器,包括onBindSuccess、onBindError和onUnBind回调。在onBindSuccess中调用startSocket方法,并配置了ClientConfig,设置了WebSocket和Socket的URL、重连间隔、客户端ID等参数。同时,定义了一个心跳定时器,并在接收到消息时执行特定操作。
摘要由CSDN通过智能技术生成

CSocket.getInstance().init(context, new CSocket.OnServiceListener() {

@Override

public void onBindSuccess() {

Log.i(TAG, "===>onBindSuccess");

startSocket();

}

@Override

public void onBindError() {

Log.i(TAG, "===>onBindError");

}

@Override

public void onUnBind() {

Log.i(TAG, "===>onUnBind");

}

});

private void startSocket() {

ClientConfig connConfig = new ClientConfig("default");

connConfig.setFrameworkType(SocketFrameworkType.SOCKET_JAVA_BLOCK);

connConfig.setWebsocketUrl("ws://172.16.11.20:9802");

connConfig.setReconnectInterval(2000);

connConfig.setSocketUrl("192.168.22.110:9802");

connConfig.setClientId("ws-test");

//配置心跳定时器

DogManager.getInstance().setDog(new ErhaDog(this)).setDogListener(new DogFather.DogListener() {

@Override

public void lookup(int count, int maxCount) {

Log.i(TAG, "ping====>" + count + "#" + maxCount);

CSocket.getInstance().sendMessage("ws-test", buildHeartbeat().toString());

}

});

CSocket.getInstance().start(connConfig, new OnCSocketListener() {

@Override

public void onOpen(String channelId, byte[] response) {

Log.i(TAG, "onOpen====>" + channelId);

DogManager.getInstance().lookup();

}

@Override

public void onMessage(String channelId, String message) {

Log.i(TAG, "onMessage====>" + channelId + "#" + message);

DogManager.getInstance().feedDog();

}

@Override

public void onFailure(String channelId, String exceptionClass, String msg) {

super.onFailure(channelId, exceptionClass, msg);

Log.e(TAG, "onFailure====>" + channelId + "#" + exceptionClass + "#" + msg);

}

@Override

public void onReconnecting(String clientId, int count) {

Log.e(TAG, "onReconnecting====>" + clientId + "#" + count);

}

});

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值