我是 iOS 和 objective-c 的新手,但我正在尝试使用 GCDAsyncSocket 我用它来联系整个应用程序的 TCP/IP 服务器, 在每个 viewController 中,我想开始从/到服务器发送和接收,所以每次我分配新的 cocaSocket 实例,它像我的新客户端一样发送到服务器。
那么我怎样才能确保一个 cocaSocket 实例可以应用于整个应用程序。
感谢任何回复!
最佳答案
那么,您可以在 AppDelegate 中创建 Socket 并将其存储在属性中。
// pseudo code - did not check the documentation how to actually create such a beast
self.socket = [[GCDAsyncSocket alloc] init];
然后在其他类中,您可以通过以下方式访问应用程序委托(delegate)
(myAppDelegate *) [[[UIApplication sharedApplication] delegate] socket];
我认为您在这里不需要单例。
关于Objective-C委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10782217/