Я пытаюсь использовать Multipeer Connectivity для подключения iPhone Simulator на моем Mac к моему iPhone. Приложение попадет в MCBrowserViewController, где я коснусь симулятора iPhone и отправлю ему приглашение. Затем я приму приглашение от своего Mac, и мой телефон покажет мне «подключение ...». Однако подключение никогда не будет успешным, даже если мой Mac и телефон находятся на расстоянии менее 4 дюймов друг от друга. Это также не работает в обратном порядке (например, когда я отправляю приглашение со своего Mac)
Я пробовал предложения в этой ссылке, но ни отдельные сеансы рекламодателя и браузера, ни комментирование didReceiveCertificate, похоже, не работают.
- (void)setupPeerWithDisplayName:(NSString *)displayName {
self.peerID = [[MCPeerID alloc] initWithDisplayName:displayName];
}
- (void)setupSession {
self.advertiseSession = [[MCSession alloc] initWithPeer:self.peerID];
self.advertiseSession.delegate = self;
self.browserSession = [[MCSession alloc] initWithPeer:self.peerID];
self.browserSession.delegate = self;
}
- (void)setupBrowser {
self.browser = [[MCBrowserViewController alloc] initWithServiceType:@"m117" session:self.browserSession];
}
- (void)advertiseSelf:(BOOL)advertise {
if (advertise) {
self.advertiser = [[MCAdvertiserAssistant alloc] initWithServiceType:@"m117" discoveryInfo:nil session:self.advertiseSession];
[self.advertiser start];
} else {
[self.advertiser stop];
self.advertiser = nil;
}
}
...
-(void)session:(MCSession *)session didReceiveCertificate:(NSArray *)certificate fromPeer:(MCPeerID *)peerID certificateHandler:(void (^)(BOOL))certificateHandler {
certificateHandler(YES);
}