Estoy desarrollando algún tipo de juego de tablero multijugador masivo. Mi solución es node.js socket.io en el servidor. Necesito una solución para la implementación de algún tipo de socket object-c que se comunique con socket.io para enviar y recibir objetos json como string. No usaré webkit con websocket. ¿Hay alguna posibilidad? El servidor mantendrá el estado del juego, los clientes de iphone enviarán acciones al servidor y recibirán cambios en el servidor.Comunicación de socket de iPhone Objective-C con Socket.IO
Respuesta
Le sugiero que consulte la documentación de Apple para la transmisión y los enchufes si está planeando hacer una aplicación nativa. http://developer.apple.com/library/ios/#documentation/cocoa/Conceptual/Streams/Streams.html
mira esto: https://github.com/fpotter/socketio-cocoa
Parece que esta biblioteca ya no se mantiene, el proyecto git ni siquiera se clona --recursive correctamente –
O echar un vistazo a cocoaasyncsocket:
CocoaAsyncSocket compatible con TCP y UDP. La clase AsyncSocket es para TCP, y la clase AsyncUdpSocket es para UDP. Cada clase se describe a continuación.
AsyncSocket es una biblioteca de red de conexión TCP/IP que envuelve CFSocket y CFStream. Ofrece operación asincrónica , y una clase de cacao nativa completa con soporte de delegado. Aquí son las características clave:
cola no bloqueante lee y escribe, con tiempos de espera opcionales. Usted dígale qué leer o escribir, y lo llamará cuando esté listo.
Aceptación automática del zócalo. Si le dice que acepte conexiones, lo llamará con nuevas instancias de sí mismo para cada conexión. Puede, por supuesto, desconectarlos inmediatamente.
Soporte delegado. Los errores, las conexiones, las aceptaciones, las lecturas de finalización, las terminaciones de escritura, el progreso y las desconexiones dan como resultado una llamada a su método delegado.
Basado en bucle de ejecución, no basado en subprocesos. Aunque puede usarlo en hilos principales o de trabajo, no es necesario. Llama a los métodos de delegado de forma asincrónica utilizando NSRunLoop. Los métodos de delegado incluyen un parámetro de socket, que le permite distinguir entre muchas instancias.
Autónomo en una clase. No necesita ensuciar con secuencias o zócalos. La clase maneja todo eso.
Soporte para transmisiones TCP sobre IPv4 e IPv6.
La biblioteca es de dominio público, escrito originalmente por Dustin Voss. Ahora disponible en un entorno público para permitir y fomentar su apoyo continuo.
AsyncUdpSocket es una biblioteca de red de sockets UDP/IP que envuelve CFSocket. Funciona casi exactamente como la versión de TCP, pero está diseñado específicamente para UDP.Esto incluye operaciones de envío/recepción sin bloqueo en cola operaciones, soporte de delegado completo, clase autocontenida basada en bucle de ejecución, y soporte para IPv4 e IPv6.
¿Funcionará esta biblioteca con Socket.IO desde el primer momento? – greenimpala
03/19/2015 editado: Los chicos Socket.IO crearon su propia biblioteca IOS que admita Socket.IO v1.0 +. Consíguelo aquí: https://github.com/socketio/socket.io-client-swift
vieja respuesta
me biblioteca socket.io de fpotter actualizado para funcionar con la versión 0.7.2 - 0.9.x.
Soporta sockets y XHRpolling.
https://github.com/pkyeck/socket.IO-objc
Tal vez usted quiere comprobarlo.
Hola pkyech. Estoy usando tu biblioteca y funciona perfectamente con mi aplicación iOS7. Ahora quiero conectarme una vez y administrar los eventos de cada viewControllers por NSObject para evitar demasiados connect/disconnect. ¿Tienes algún tutorial sobre eso? – Maziyar
lo siento, pero no, no hay un tutorial para esto. – pkyeck
Estoy agregando la biblioteca [link] (https://github.com/pkyeck/socket.IO-objc) en Xcode 7 e iOS 9. Pero después de la conexión solo me está dando una respuesta de 'error code 400'. Sin embargo, si lo estoy haciendo rápido, entonces se conecta correctamente. ¿Esta biblioteca de objetivo c está obsoleta? @pkyeck –
- 1. Comunicación iPhone a iPhone
- 2. socket.io y servidor de socket .Net
- 3. ¿Cerrar el servidor de socket en socket.io?
- 4. iPhone Bluetooth Ejemplos de comunicación
- 5. autenticación socket.io después del socket establecido
- 6. Comunicación Fast IPC/Socket en Java/Python
- 7. Uso de librerías estáticas C/C++ desde iPhone Aplicaciones ObjectiveC
- 8. iPhone socket program
- 9. .NET NO tiene una comunicación de socket Asynchronouos confiable?
- 10. Ejemplo de programación de socket en iphone
- 11. tcp cliente con socket.io (nodejs)
- 12. Socket.io, ¿diferencia entre socket.set() y la propiedad socket?
- 13. Comunicación asincrónica multiservicio servidor-cliente en el mismo socket abierto?
- 14. Comunicación segura entre iPhone y servidor?
- 15. Problemas de seguridad de Socket.io
- 16. clúster de nodos con socket.io y expressjs
- 17. socket.io independiente sin Node.js
- 18. Comunicación entre dos computadoras usando el socket python
- 19. ¿Cómo usar Websockets con Pyramid y socket.io?
- 20. Socket.IO con RabbitMQ?
- 21. ¿Usando socket.io con Cluster?
- 22. socket.io con expreso
- 23. node.js, socket.io con SSL
- 24. Parámetros adicionales con socket.io
- 25. Restricción en el dominio al usar socket.io?
- 26. iPhone Socket TCP/IP del servidor/cliente
- 27. Benchmarkt socket.io
- 28. configuración NGINX para trabajar con Socket.IO
- 29. ¿Cómo evitar crear una nueva conexión de socket en socket.io después de actualizar la página html?
- 30. Ejemplo simple nodeJS no funciona con socket.io
Esta pregunta está fuera del tema; [Las preguntas que solo solicitan recomendaciones de bibliotecas u otros recursos externos están fuera del tema de Stack Overflow] (// meta.stackoverflow.com/q/251134/2747593). OP, si todavía tiene este problema, entonces comience a escribir el código, y regrese cuando tenga un problema más específico. Asegúrese de mostrarnos [lo que ha intentado] (http://whathaveyoutried.com) e incluir un [Ejemplo mínimo, completo y verificable] (// stackoverflow.com/help/mcve). –