我正在尝试使用GCDAsyncSocket在我的Mac和iPhone之间建立点对点连接。目前,两个设备都在同一个wifi下连接。但是使用方法:
[asyncSocket connectToHost:@"my iPhone's IP address" onPort:80 error:&err]
不起作用。是因为我的误操作?您能否解释一下如何在我的环境下建立点对点连接?
答案 0 :(得分:0)
我找到了一种方法。如果您正在使用GCDAsyncSocket,那么有一个名为BonjourServer&的演示程序。 BonjourClient。在其代码中,有一个委托方法:
- (void)socket:(GCDAsyncSocket *)sock didAcceptNewSocket:(GCDAsyncSocket *)newSocket
{
DDLogInfo(@"Accepted new socket from %@:%hu", [newSocket connectedHost], [newSocket connectedPort]);
// The newSocket automatically inherits its delegate & delegateQueue from its parent.
[connectedSockets addObject:newSocket];
connectedSocket = newSocket;
}
在服务器和客户端之间建立对等连接时,可以使用上面指定的方法发送数据。