Ios 如何调用didAcceptConnectionWithInputStream:outputStream:?
我的第一个问题是如何在Ios 如何调用didAcceptConnectionWithInputStream:outputStream:?,ios,networking,bonjour,connection,nsnetservice,Ios,Networking,Bonjour,Connection,Nsnetservice,我的第一个问题是如何在NSNetServiceDelegate中调用didAcceptConnectionWithInputStream:outputStream:回调 后续问题:尽管我从未收到一个回调,说连接已被接受(通过didAcceptConnectionWithInputStream:outputStream:),但我仍然可以在客户端和服务器之间建立连接吗 我理解,在传入NSNetServiceListenForConnections选项时调用publishWithOptions,应该会
NSNetServiceDelegate
中调用didAcceptConnectionWithInputStream:outputStream:
回调
后续问题:尽管我从未收到一个回调,说连接已被接受(通过didAcceptConnectionWithInputStream:outputStream:
),但我仍然可以在客户端和服务器之间建立连接吗
我理解,在传入NSNetServiceListenForConnections
选项时调用publishWithOptions
,应该会导致调用NetServiceDelegate
回调(didAcceptConnectionWithInputStream:outputStream:
)。但是,不会调用该回调
以下是我要发布的步骤:
NSNetService
self.netService=[[NSNetService alloc]initWithDomain:@“”
类型:\ u serviceType
名称:(_name==nil)?@“”:_name
端口:0]publishWithOptions:NSNetServiceListenForConnections
NSNetServiceBrowser
,并将其委托给我的客户机包装器对象searchForServicesOfType
UITableView
中列出服务,以允许用户选择服务getInputStream:outputSteam:
didAcceptConnectionWithInputStream:outputStream:
。然而,这并没有发生谢谢你的帮助 问题是必须从接受连接的一端调用
didAcceptConnectionWithInputStream:outputStream:
一旦服务可用,您就可以调用get-the-streams
[服务getInputStream:&IsStream outputStream:&ostream]
一旦在接收请求的一方发生这种情况,委托方法
- (void)netService:(NSNetService *)sender didAcceptConnectionWithInputStream:(NSInputStream *)inputStream outputStream:(NSOutputStream *)outputStream
将被称为这都是惰性初始化的一部分 调用
getInputStream:outputStream:
将返回两个非常好的NSStream,可以随时使用。比如说,你想写一些数据?首先,打开写流
砰
netService:didAcceptConnectionWithInputStream:outputStream:
被调用。根据我的经验,不是在客户端调用getInputStream:outputStream:
的行为导致服务器调用didAcceptConnectionWithInputStream:outputStream:
在客户端上,在调用
getInputStream:outputStream:
之后,您的客户端需要调用[inputStream open]
和[outputStream open]
,然后才能调用didAcceptConnectionWithInputStream:outputStream:
。您找到了吗?是的,我知道必须从接受连接的一端调用didAcceptConnectionWithInputStream:outputStream:
。在我的例子中,服务器也充当客户机,但始终没有调用回调方法,didAcceptConnectionWithInputStream:outputStream:
。