2012-04-10 11 views
5

Veo en el sitio web de SocketIO que es posible usar SocketIO para dispositivos móviles. Traté de encontrar una documentación en su sitio acerca de cómo hacer esto, pero no pude encontrar ninguno.NodeJS + SocketIO empujando a la aplicación móvil

¿Alguien ha descubierto cómo emitir un mensaje al dispositivo móvil usando SocketIO? ¿Supongo que tiene que vivir dentro de una WebView o algo que pueda ejecutar javascript?

EDIT ¿Qué pasa si no estoy planeando usar Sencha o PhoneGap. Quiero ir a ser nativo Objective-C/Java. ¿Sería esto posible?

Agregando a la respuesta elegida me encontré con un java socket.io cliente https://github.com/benkay/java-socket.io.client

Respuesta

5

Socket.io que aprovecha el protocolo websocket (Una solicitud de actualización enviado al servidor por el cliente a través de HTTP) ofrece una completa canal dúplex para la comunicación. Es compatible con muchos navegadores web en el espacio móvil como usted mencionó.

Para implementar esto, uno de los casos de uso sería, por ejemplo, tener una aplicación basada en fajos de teléfono para desarrollar, que es básicamente HTML, CSS & JS. Entonces, para tener un canal de comunicación de dúplex completo dedicado, puede usar socket.io.

Cuando usted escribe su servidor de nodo JS: En referencia al Socket.io Website

var io = require('socket.io').listen(80); // beauty is web socket still runs in 80/443(WSS) and leverages TCP's capabilities. 

io.sockets.on('connection', function (socket) { 
    socket.emit('news', { hello: 'world' }); 
    socket.on('my other event', function (data) { 
    console.log(data); 
    }); 
}); 

Pero en su lado dev móvil, que tendrá que incluir la JS en el código HTML en la que quería aprovechar las capacidades de websocket .

<script src="/socket.io/socket.io.js"></script> 
<script> 
    var socket = io.connect('http://localhost'); 
    socket.on('news', function (data) { 
    console.log(data); 
    socket.emit('my other event', { my: 'data' }); 
    }); 
</script> 

Un cliente descargable JS está disponible en el sitio web de socket.io.

Espero que esto ayude.

+0

Hola, gracias por la respuesta. ¿Qué pasa si quiero hacer esto de forma nativa? – denniss

+0

Creo que esto debería funcionar para usted - http://code.google.com/p/unitt/wiki/UnittWebSocketClient – Futur

+0

También esta https://github.com/square/SocketRocket – Futur

Cuestiones relacionadas