2010-06-11 29 views
6

Tôi có một máy chủ TCP đang chạy trên máy. (được thực hiện bằng Java). Tôi cần phải kết nối với máy chủ đó từ iPhone và gửi dữ liệu đến máy chủ và cũng có thể, nhận dữ liệu trên iPhone khi máy chủ đẩy dữ liệu của tôi. Vì vậy, tôi cần được thông báo khi dữ liệu được đẩy từ máy chủ.Máy khách TCP/IP khách quan

Có cách nào để thực hiện điều này trong Mục tiêu C (lập trình socket) hay không. Mặc dù tôi googled tôi không thể tìm thấy một giải pháp. Nhưng tôi thấy CFSocket, vv Xin vui lòng bất cứ ai có một giải pháp?

Trả lời

6

sau một giải pháp có thể có trên internet, tôi đã tìm thấy Thư viện ổ cắm TCP và UDP không đồng bộ tốt đẹp ở đây. (http://code.google.com/p/cocoaasyncsocket). Thư viện này đã làm việc thực sự tốt cho tôi cho đến nay. Điều này kết thúc tốt đẹp CFSocket và CFStream.

Cảm ơn câu trả lời của bạn.

+4

CocoaAsyncSocket đã chuyển sang github: https://github.com/robbiehanson/CocoaAsyncSocket – seb

2

Bạn có thể sử dụng họ lớp CFNetwork để thực hiện các ổ cắm mức thấp hơn. Apple có introduction document mô tả việc sử dụng các lớp này.

0

Cuộc gọi CFSocket và tương tự sẽ cho phép bạn tạo ổ cắm. Sau đó bạn có thể sử dụng CFStreamCreatePairWithSocket() để tạo ra một CFReadStreamRef và CFWriteStreamRef, mà bạn có thể truyền tới NSInputStream * và NSOutputStream *.