iOS multipeer connectivity 当连接到多个设备时如何发送数据到指定设备

iOS multipeer connectivity how to send data to specify device when connected to more than one device

现在我在 iOS 多点连接发送数据时遇到问题。我可以仅将数据发送到指定设备但是 4 个设备连接在一起吗?例如当设备A向设备B发送数据时,设备C和设备D无法接收。但是现在,当我通过

发送数据时
sendData:dataToBeSent
toPeers:allPeers
withMode:MCSessionSendDataReliable
error:&error

设备C和设备D也收到了数据。请帮助

如果您想使用本地 URL 或网络 URL 将数据发送到特定的对等点,那么您可以使用以下方法。

sendResourceAtURL:withName:toPeer:withCompletionHandler:

否则,您可以将带有选定 peerID 的数组作为 toPeers 的参数传递给下面的方法

sendData:toPeers:withMode:error: 

您可以通过使用生成的 MCSession 指定您连接到的对等点 ID 来将数据(例如 json 文件)发送到对等点。

NSError *error;
    buddy.outputStream = [self.session startStreamWithName:@"myProfile"
                                                    toPeer:peerID
                                                     error:&error];
    if (error) {
        NSLog(@"error while sending data: %@", [error description]);
        return;
    }

其中 buddy 只是一个实现流委托方法的自定义 NSObject。