2010-06-11 200 views
6

我有一台运行在机器上的TCP服务器。 (用Java实现)。我需要从iPhone连接到该服务器并将数据发送到服务器,并在服务器推送数据时在iPhone上接收数据。所以我需要在数据从服务器推送时得到通知。Objective-c TCP/IP客户端

有没有办法在Objective C(套接字编程)中做到这一点。虽然我GOOGLE了我找不到解决方案。但我看到CFSocket等 请任何人有一个解决方案?

回答

6

在互联网可能的解决方案后,我在这里找到了一个很好的异步TCP和UDP套接字库。 (http://code.google.com/p/cocoaasyncsocket)。迄今为止,这个库对我来说工作得非常好。这包装了CFSocket和CFStream。

感谢您的回复。

+4

CocoaAsyncSocket已经转移到github上:https://github.com/robbiehanson/CocoaAsyncSocket – seb 2012-05-05 18:32:44

2

您可以使用CFNetwork系列的类来实现更低级别的套接字。 Apple有一个introduction document描述这些类的使用。

0

CFSocket调用和类似的可以让你创建套接字。然后可以使用CFStreamCreatePairWithSocket()创建一个CFReadStreamRef和CFWriteStreamRef,您可以将它们投射到NSInputStream *和NSOutputStream *。