9
votes

iPhone Objective-C socket communication avec socket.io

Je développe une sorte de jeu de planche multijoueur massive. Ma solution est nœud.js socket.io sur le serveur. J'ai besoin de solution pour la mise en œuvre d'une sorte de socket Objective-C qui communiquerait avec Socket.io pour l'envoi et la réception d'objets JSON en tant que chaîne. Je n'utiliserai pas WebKit avec Websocket. Y a-t-il une possibilité? Server organisera l'état de jeu, les clients iPhone envoiont des actions au serveur et recevront des modifications sur le dos du serveur.


1 commentaires

Cette question est hors sujet; Questions demandant uniquement que les recommandations de bibliothèques ou d'autres ressources hors site sont hors tension pour débordement de pile . OP, si vous avez toujours ce problème, veuillez commencer à écrire du code et revenir lorsque vous avez un problème plus spécifique. Assurez-vous de vous montrer ce que vous avez essayé et inclure un Exemple minimal, complet et vérifiable .


4 Réponses :


4
votes

Je suggérerais de vérifier la documentation Apple pour le streaming et les sockets si vous envisagez de faire une application native. http://developer.apple.com/library/ iOS / # documentation / cacao / conceptuel / flux / flux.html


0 commentaires

3
votes

1 commentaires

Cette bibliothèque ne semble plus être maintenue, le projet GIT n'est même pas clone --Recursive correctement



6
votes

ou jeter un oeil à cocoaasyncsocket :

cocoaasyncsocket prend en charge TCP et UDP. La classe Asyncsocket est pour TCP, et la classe Asyncudpsocket est pour Udp. Chaque classe est décrite ci-dessous.

Asyncsocket est une prise TCP / IP la bibliothèque de réseau qui enveloppe CFSocket et cfstream. Il offre asynchrone opération et une classe de cacao indigène complet avec support de délégué. Ici sont les caractéristiques principales:

  • Fileté non bloquante lit et écrit, avec des délais optionnels. Tu Dites-lui quoi lire ou écrire, et Cela vous appellera quand c'est fait.

  • Acceptation automatique de la prise. Si vous le direz d'accepter les connexions, cela vous appellera de nouvelles instances de soi pour chaque connexion. Vous pouvez bien sûr les déconnecter immédiatement.

  • soutien délégué. Les erreurs, les connexions, acceptent, les achèvements de lecture, les achèvements, les progrès et les déconnexions entraînent tous un appel à votre méthode de déléguée.

  • Basculé à base d'exécution, pas à la base de fil. Bien que vous puissiez l'utiliser sur des threads principaux ou travailleurs, vous n'avez pas besoin. Il appelle les méthodes déléguées de manière asynchrone à l'aide de NsRunLoop. Les méthodes de délégation comprennent un paramètre de prise, vous permettant de distinguer entre de nombreuses instances.

  • autonome dans une classe. Vous n'avez pas besoin de boue avec des ruisseaux ou des sockets. Les poignées de la classe tout ça.

  • Prise en charge des flux TCP sur IPv4 et IPv6.

    La bibliothèque est domaine public, Écrit initialement par Dustin Voss. Maintenant Disponible dans un cadre public pour permettre et encourager son soutien continu.

    asyncudpsockt est une bibliothèque de réseau UDP / IP qui enveloppe Cfsocket. Ça marche presque exactement comme la version TCP, mais est conçue spécifiquement pour UDP. Ceci comprend Envoyer / recevoir en file d'attente non bloquante Opérations, soutien complet de délégué, classe basée sur la boucle et la classe autonome, et support pour IPv4 et IPv6.


1 commentaires

Cette bibliothèque fonctionnera-t-elle avec Socket.IO hors de la boîte?



10
votes

édité 2015/03/19: Les gars Socket.io ont créé leur propre bibliothèque iOS prenant en charge Socket.IO V1.0 +. Obtenez ici: https://github.com/socketio/socket.io-Client- Swift


Ancienne réponse

J'ai mis à jour la bibliothèque de Fpotter de Fpotter.io pour travailler avec la version 0,7.2 - 0.9.x .
Il prend en charge les sockets et xhrpolling.

https://github.com/pkyeck/socket.io-OBJC

Peut-être que vous voulez vérifier.


3 commentaires

Salut Pkkkeech. J'utilise votre bibliothèque et cela fonctionne parfait avec mon application iOS7. Maintenant, je veux connecter une fois et gérer les événements à partir de chaque vueContrôleurs de NsObject pour éviter trop de connexion / déconnexion. Avez-vous un tutoriel à ce sujet?


Désolé, mais non il n'y a pas de tutoriel pour cela.


J'ajoute Lien bibliothèque dans Xcode 7 et iOS 9. Mais après la connexion, il suffit de donner Moi une réponse du code d'erreur 400 . Cependant, si je le fais à Swift, il se connecte correctement. Cette bibliothèque d'objectif C est-elle obsolète? @pkyeck