2012-04-10 13 views
5

Vedo sul sito Web di SocketIO che è possibile utilizzare SocketIO per dispositivi mobili. Ho provato a trovare una documentazione sul suo sito su come farlo, ma non sono riuscito a trovarne.NodeJS + SocketIO che spinge all'app mobile

Qualcuno ha capito come emettere un messaggio sul dispositivo mobile usando SocketIO? La mia ipotesi è che deve vivere all'interno di una WebView o qualcosa che può eseguire javascript?

EDIT Cosa succede se non ho intenzione di utilizzare Sencha o PhoneGap. Voglio andare nativo. Objective-C/Java. Sarebbe possibile?

Aggiungendo alla risposta prescelta ho trovato un java socket.io cliente https://github.com/benkay/java-socket.io.client

risposta

5

Socket.io che sfrutta il protocollo WebSocket (Una richiesta di aggiornamento inviata al server dal client su HTTP) offre una completa canale duplex per la comunicazione. È stato supportato da molti browser Web nello spazio mobile come hai menzionato.

Per implementare questo, uno dei casi d'uso potrebbe essere, ad esempio, l'esecuzione di un'app basata su PhoneGap che è fondamentalmente HTML, CSS & JS. Quindi per avere un canale di comunicazione full duplex dedicato è possibile utilizzare socket.io.

Quando si scrive il Nodo JS Server: Riferendosi alla 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); 
    }); 
}); 

Ma nel vostro lato dev cellulare, si dovrà includere il JS nel codice HTML dove si voleva sfruttare le capacità dello zoccolo del web .

<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 client scaricabile JS è disponibile nel sito Web socket.io.

Spero che questo aiuti.

+0

Hey, grazie per la risposta. Cosa succede se voglio fare questo in modo nativo? – denniss

+0

Credo che questo dovrebbe funzionare per te - http://code.google.com/p/unitt/wiki/UnittWebSocketClient – Futur

+0

Anche questo https://github.com/square/SocketRocket – Futur

Problemi correlati