我正在尝试使用服务器和Android中的SocketIO与NodeJS服务器进行通信。目前正在使用Gottox SocketIO-Java-Client Repository
的NodeJS:
socket.on('new user',function(data, callback){
if (nicknames.indexOf(data)!=-1){
callback(false);
} else{
callback(true);
socket.nickname = data;
nicknames.push(socket.nickname);
updateNicknames();
}
});
机器人:
socket.emit("new user", "User01");
现在,如果我使用上面的代码,回调错误发生在回调(true),如以下链接所示: http://i.imgur.com/Hdn1yKQ.png
请建议如何在Android中实现回调。
谢谢!
答案 0 :(得分:2)
尝试这对我有用,请记住回调是在其他线程中
mSocket.emit("newuser", email, new Ack() {
@Override
public void call(Object... args) {
Log.i("callback","test");
}
});
答案 1 :(得分:1)
您的Java客户端未提供回调。客户端方法应如下所示:
socket.emit("new user", new IOAcknowledge() {
public void ack(Object...args) {
}
}, "User01");