IOAcknowledge方法不适用于Android的SocketIO?

我正在使用socketio.jarbuild立客户端服务器之间的连接。

即从我的Android设备(客户端)到节点服务器。

由于我能够成功连接,发送和接收消息到该服务器。

问题是为什么我没有从服务器发送消息后从套接字得到任何确认 。 有一个callBack接口IOAcknowledge作为参数,从来没有工作/为我调用。

socket.emit( "sendMessage", new IOAcknowledge() { @Override public void ack(Object... arg0) { System.out.println("sendMessage IOAcknowledge" + arg0.toString()); } }, "Hi!! how are you"); 

有谁知道解决scheme何时或如何IOAcknowledge将工作?

编辑:我正在使用的套接字库的文档链接。

官方和Github

看来,你忘了调用服务器端代码的callback:

 var io = require('socket.io')(80); io.on('connection', function (socket) { socket.on('sendMessage', function (data, callback) { console.log('Message received:', data); callback('Message successfully delivered to server!'); }); }); 

有关更多信息,请查看此主题或文档

编辑:

问题还在于Ack实现应该作为发送函数的最后一个参数,所以你的Java代码应该是这样的:

 socket.emit("sendMessage", "Hi!! how are you", new Ack() { @Override public void call(Object... args) { System.out.println("sendMessage IOAcknowledge" + args.toString()); } });