Android,socket.io,连接到nodejs服务器时握手时出错

Android,socket.io,连接到nodejs服务器时握手时出错,android,node.js,sockets,socket.io,Android,Node.js,Sockets,Socket.io,我只想从我的android应用程序连接到我的nodejs服务器,顺便说一句,我正在使用genymotion 这里出了什么问题: 节点服务器: var server = require('http').Server(); var io = require('socket.io')(server); io.sockets.on('connection', function(socket) { socket.on('echo', function(data) {

我只想从我的android应用程序连接到我的nodejs服务器,顺便说一句,我正在使用genymotion

这里出了什么问题:

节点服务器:

    var server = require('http').Server();
    var io = require('socket.io')(server);
    io.sockets.on('connection', function(socket) {
      socket.on('echo', function(data) {
        socket.emit('echo back', data);
      });
    });
    server.listen(12123,"127.0.0.1");
安卓:

    SocketIO socket = new SocketIO("http://127.0.0.1:12123");
       socket.connect(new IOCallback() {
           @Override
           public void on(String event, IOAcknowledge ack, Object... args) {
               if ("echo back".equals(event) && args.length > 0) {
                   Log.d("SocketIO", "" + args[0]);
                   // -> "hello"
               }
           }

           @Override
           public void onDisconnect() {

           }

           @Override
           public void onConnect() {
               Log.i("CONNECT","just connected");
           }

           @Override
           public void onMessage(String s, IOAcknowledge ioAcknowledge) {
               Log.i("MESSAGE",s);
           }

           @Override
           public void onMessage(JSONObject jsonObject, IOAcknowledge ioAcknowledge) {

           }

           @Override
           public void onError(SocketIOException e) {
               Log.i("ERROR_MESSAGE ",e.getMessage().toString());
           }

       });
       socket.emit("echo", "hello");
日志:

    01-26 17:04:44.996    1904-2291/com.navigation.drawer.activity I/ERROR_MESSAGE﹕ Error while handshaking

    01-26 17:04:44.997    1904-2291/com.navigation.drawer.activity I/io.socket﹕ Cleanup
节点版本v0.10.31
socket.io版本1.3.2

您无法从模拟器访问127.0.0.1(localhost),因为模拟器有自己的localhost,我认为是12.0.0.2(或其他),所以我认为如果您直接连接到本地ip(例如:192.168.1.123,无论您的本地ip是什么),它必须工作